import { f as Collection, y as CurrencyCode, c as Product, e as ShopifyCollection, g as StoreInfo } from './store-CJVUz2Yb.mjs'; /** * Interface for collection operations */ interface CollectionOperations { /** * Fetches all collections from the store across all pages. */ all(): Promise; /** * Fetches collections with pagination support. * * @param options - Pagination options * @param options.page - Page number (default: 1) * @param options.limit - Number of collections per page (default: 10, max: 250) * * @returns {Promise} Array of collections for the page or null if error occurs */ paginated(options?: { page?: number; limit?: number; }): Promise; /** * Finds a specific collection by its handle. */ find(collectionHandle: string): Promise; /** * Fetches collections that are showcased/featured on the store's homepage. */ showcased(): Promise; /** * Product-related methods for fetching products from specific collections. */ products: { /** * Fetches products from a specific collection with pagination support. */ paginated(collectionHandle: string, options?: { page?: number; limit?: number; currency?: CurrencyCode; }): Promise; /** * Fetches all products from a specific collection. */ all(collectionHandle: string, options?: { currency?: CurrencyCode; }): Promise; /** * Fetches all product slugs from a specific collection. */ slugs(collectionHandle: string): Promise; }; } /** * Creates collection operations for a store instance */ declare function createCollectionOperations(baseUrl: string, storeDomain: string, fetchCollections: (page: number, limit: number) => Promise, collectionsDto: (collections: ShopifyCollection[]) => Collection[], fetchPaginatedProductsFromCollection: (collectionHandle: string, options?: { page?: number; limit?: number; }) => Promise, getStoreInfo: () => Promise, findCollection: (handle: string) => Promise): CollectionOperations; export { type CollectionOperations, createCollectionOperations };