import type { CreateType } from '@/api/type';
export interface WarehouseState {
    warehouses: FdoWarehouse[];
}
export declare function useWarehouseStore(): {
    warehouses: {
        customAttributes?: Record<string, any> | null | undefined;
        preparationTime?: {
            unit: "year" | "month" | "week" | "day" | "hour" | "minute" | "second" | "millisecond";
            value: number;
        } | null | undefined;
        pf_business?: {
            internal?: boolean | null | undefined;
            url?: string | null | undefined;
            expiredAt?: string | null | undefined;
            agentId?: string | null | undefined;
            attributeSettings?: {
                type: "string" | "number" | "boolean" | "date";
                key: string;
                entity: "restaurant" | "warehouse" | "item" | "inventorySku" | "inventoryRecipe";
            }[] | null | undefined;
            pf_agent?: {
                clickupId?: string | null | undefined;
                members?: {
                    pf_user?: {
                        email?: string | null | undefined;
                        phoneNumber?: string | null | undefined;
                        birthday?: string | null | undefined;
                        gender?: "MALE" | "FEMALE" | null | undefined;
                        addresses?: {
                            name: string;
                            address: string;
                            coordinates: number[];
                        }[] | null | undefined;
                        photoURL?: string | null | undefined;
                        displayName?: string | null | undefined;
                        imported?: {
                            raw: Record<string, any>;
                            source: "FEEDME" | "CITY_POS" | "STOREHUB" | "KERUYUn" | "QISOFT" | "WECHAT" | "TEABAR" | "NULL_MEMBER" | "UMAI_POS" | "QASHIER" | "XILNET" | "GENIUSPOS" | "YHOFOODIE";
                        } | null | undefined;
                        _id: string;
                    } | null | undefined;
                    role: "ADMIN";
                    userId: string;
                }[] | null | undefined;
                code: string;
                name: string;
                _id: string;
                isReseller: boolean;
            } | null | undefined;
            thumbnail?: string | null | undefined;
            billingInfos?: {
                _id?: string | null | undefined;
                name: string;
                address: {
                    coordinates?: number[] | null | undefined;
                    line2?: string | null | undefined;
                    state: string;
                    country: string;
                    line1: string;
                    city: string;
                    postcode: string;
                };
                email: string;
                companyName: string;
                contact: string;
            }[] | null | undefined;
            customerDisplayImages?: {
                url: string;
                restaurantIds: string[];
            }[] | null | undefined;
            name: string;
            _id: string;
            ownerId: string;
            restaurantQuota: number;
            warehouseQuota: number;
            menuVersion: string;
        } | null | undefined;
        _id: string;
        businessId: string;
        profile: {
            email?: string | null | undefined;
            phoneNo?: string | null | undefined;
            name: string;
            address: {
                coordinates?: number[] | null | undefined;
                line2?: string | null | undefined;
                state: string;
                country: string;
                line1: string;
                city: string;
                postcode: string;
            };
            regNo: string;
        };
    }[];
    readWarehouses(): Promise<void>;
    createWarehouse(warehouse: CreateType<FdoWarehouse>): Promise<void>;
    updateWarehouse(warehouse: FdoWarehouse): Promise<void>;
    deleteWarehouse(warehouse: FdoWarehouse): Promise<void>;
    init(): Promise<void>;
};
