import type { BagItem, BagOperation, BagPromocodesInformation, BlackoutError } from '@farfetch/blackout-client'; import type { BagNormalized } from '../types/index.js'; import type { CombinedState } from 'redux'; export type BagItemsState = CombinedState<{ ids: Array | null; item: { error: Record; isLoading: Record; [k: string]: unknown; }; [k: string]: unknown; }>; export type BagOperationsState = CombinedState<{ error: Record; isLoading: Record; }>; export type BagPromocodesState = { error: BlackoutError | null; isLoading: boolean; result: BagPromocodesInformation | undefined | null; }; export type BagsState = CombinedState<{ error: BlackoutError | null; id: BagNormalized['id'] | null; isLoading: boolean; result: BagNormalized | null; items: BagItemsState; bagOperations: BagOperationsState; bagPromocodes: BagPromocodesState; [k: string]: unknown; }>;