An interface for selectors related to product entities and prices for simple products.
| Name | Type | Description | 
|---|---|---|
| selectProductEntitiesState | MemoizedSelector< DaffProductStateRootSlice<T>, EntityState<T>> | Selects the ngrx entities state for products. | 
| selectProductIds | MemoizedSelector< DaffProductStateRootSlice<T>, EntityState<T>['ids']> | Selects all ids for products in state. | 
| selectProductEntities | MemoizedSelector< DaffProductStateRootSlice<T>, EntityState<T>['entities']> | Selects the ngrx entities for all products in state. | 
| selectAllProducts | MemoizedSelector< DaffProductStateRootSlice<T>, T[]> | Selects all products in state as an array. | 
| selectProductTotal | MemoizedSelector< DaffProductStateRootSlice<T>, number> | Selects the total number of products in state. | 
| selectProduct | (productId: T['id']) => MemoizedSelector< DaffProductStateRootSlice<T>, T> | Selects a product by id. | 
| selectProductPrice | (productId: T['id']) => MemoizedSelector< DaffProductStateRootSlice<T>, number> | Selects the price of a product. | 
| selectProductDiscountAmount | (productId: T['id']) => MemoizedSelector< DaffProductStateRootSlice<T>, number> | Selects the discount of a product as some amount of currency. | 
| selectProductDiscountedPrice | (productId: T['id']) => MemoizedSelector< DaffProductStateRootSlice<T>, number> | Selects the discounted price of a product. | 
| selectProductDiscountPercent | (productId: T['id']) => MemoizedSelector< DaffProductStateRootSlice<T>, number> | Selects the discount of a product as a percent of the original price. | 
| selectProductHasDiscount | (productId: T['id']) => MemoizedSelector< DaffProductStateRootSlice<T>, boolean> | Selects whether or not the product has a discount. | 
| selectIsProductOutOfStock | (productId: T['id']) => MemoizedSelector< DaffProductStateRootSlice<T>, boolean> | Selects whether or not a product is out of stock. |