import { IAppState, IPayloadError } from 'store'; import { IProduct } from '../../entities/product.entity'; import { IView } from 'shared-entities'; declare const initialState: { list: { [key: string]: IProduct; }; error: { [key: string]: IPayloadError; }; loading: { [key: string]: boolean; }; view?: IView; total?: number; products: { loading: boolean; list: { [key: string]: IProduct; }; }; product: { error: string; loading: boolean; product?: IProduct; }; addOption: { error: string; loading: boolean; product?: IProduct; }; deleteOption: { error: string; loading: boolean; }; delete: { error: string; loading: boolean; }; parent: { error: string; loading: boolean; }; }; export declare type ProductState = typeof initialState; export declare const productListSelector: (state: IAppState) => { [key: string]: IProduct; }; export declare const productSelector: (state: IAppState) => IProduct; export declare const productLoadingSelector: (state: IAppState) => boolean; export declare const productsListLoadingSelector: (state: IAppState) => boolean; export declare const productErrorSelector: (state: IAppState) => string; export declare const productsCategoryOrganizationSelector: (state: IAppState) => { [key: string]: IProduct; }; export declare const productsLoadingSelector: (state: IAppState) => boolean; export declare const viewSelector: (state: IAppState) => IView; export declare const totalProductsSelector: (state: IAppState) => number; export declare const makeProductsByTypeSelector: import("reselect").OutputSelector IProduct[], (res: { [key: string]: IProduct; }) => (type: string) => IProduct[]>; export declare const productsSelector: (state: IAppState) => { [key: string]: IProduct; }; export declare const productsByOrganizationSelector: (organizationId: string) => import("reselect").OutputSelector; }) => {}>; export declare const fetchClearProduct: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchClearProducts: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchProduct: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchUpdateProduct: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchUpdateProductFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchUpdateProductSucceeded: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, string>, fetchAddProduct: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchAddProductFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchAddProductSucceeded: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, string>, fetchDeleteProduct: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchDeleteProductFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchDeleteProductSucceeded: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchProductsFromOrganization: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchProductsFromOrganizationSucceeded: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<{ [key: string]: IProduct; }, string>, fetchProductsFromOrganizationFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchParentProducts: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchParentProductsFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchParentProductsSucceeded: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchSetAvailabilityProduct: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchSetAvailabilityProductFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchSetAvailabilityProductSucceeded: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, string>, fetchAddOption: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchAddOptionFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchAddOptionSucceeded: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, string>, fetchDeleteOption: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchDeleteOptionFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload, fetchDeleteOptionSucceeded: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<{ optionId: string; productId: string; }, string>, fetchProducts: import("@reduxjs/toolkit").ActionCreatorWithoutPayload, fetchProductSucceeded: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<{ key: string; data?: { [key: string]: IProduct; }; id?: string; view?: IView; total?: number; }, string>, fetchProductFailed: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<{ key: string; data?: { [key: string]: IPayloadError; }; error: IPayloadError; }, string>; export declare const productReducer: import("redux").Reducer<{ list: { [key: string]: IProduct; }; error: { [key: string]: IPayloadError; }; loading: { [key: string]: boolean; }; view?: IView; total?: number; products: { loading: boolean; list: { [key: string]: IProduct; }; }; product: { error: string; loading: boolean; product?: IProduct; }; addOption: { error: string; loading: boolean; product?: IProduct; }; deleteOption: { error: string; loading: boolean; }; delete: { error: string; loading: boolean; }; parent: { error: string; loading: boolean; }; }, import("redux").AnyAction>; export {};