import type { Except } from 'type-fest'; import { type GetEntityCollectionOptions } from '../../entity-client/simple-entity-client/methods/get-entity-collection.js'; import type { ScayleAdminApiFetcher } from '../../http/admin-api-fetcher.js'; import type { Iso639LanguageCode } from '../iso/iso639-language-code-schema.js'; import { type MinimalWarehouseData } from './schema/warehouse-schema.js'; import { type WarehouseDataCollection, type AdditionalWarehouseKey, type WarehouseMutationPayload, type WarehouseData } from './schema/full-warehouse-schema.js'; import { type ShopWarehouseRelation, type ShopWarehouseRelationMutationPayload } from './schema/shop-warehouse-relation-schema.js'; type GetWarehouseCollectionOptions = Except & { readonly filters?: { readonly id?: number[]; readonly minId?: number; readonly maxId?: number; }; readonly withKeys?: AdditionalKeys | undefined; }; export type WarehouseEntityClient = { attachWarehouseToMerchant: (warehouseIdentifier: number | string, merchantIdentifier: number | string) => Promise; detachWarehouseFromMerchant: (merchantIdentifier: number | string, warehouseIdentifier: number | string) => Promise; getWarehousesAttachedToMerchant: (merchantIdentifier: number | string, requestOptions?: GetWarehouseCollectionOptions) => Promise; attachWarehouseToShopCountry: (shopKey: string, countryCode: Iso639LanguageCode, relation: ShopWarehouseRelationMutationPayload) => Promise; detachWarehouseFromShopCountry: (shopKey: string, countryCode: Iso639LanguageCode, warehouseIdentifier: number | string) => Promise; updateShopCountryWarehouseRelation: (shopKey: string, countryCode: Iso639LanguageCode, warehouseIdentifier: number | string, relation: ShopWarehouseRelationMutationPayload) => Promise; create: (warehouse: WarehouseMutationPayload) => Promise; delete: (warehouseIdentifier: number | string) => Promise; getCollection: (requestOptions?: GetWarehouseCollectionOptions) => Promise; getAll: (withKeys?: AdditionalKeys) => Promise[]>; }; export type WarehouseEntityClientDependencies = { readonly adminApiFetcher: ScayleAdminApiFetcher; }; export declare function createWarehouseEntityClient(dependencies: WarehouseEntityClientDependencies): WarehouseEntityClient; export {}; //# sourceMappingURL=warehouse-entity-client.d.ts.map