import { CatalogListItem, CatalogListItemsBody } from './types';
declare class CatalogListItems<T extends CatalogListItem> {
    private readonly apiUrl;
    private readonly apiKey;
    readonly items: T[];
    private readonly nextPageLink?;
    constructor(apiUrl: string, apiKey: string, items: T[], nextPageLink?: string | undefined);
    hasNextPage(): boolean;
    next(): Promise<CatalogListItems<T>>;
    static queryItems<T extends CatalogListItem>(apiUrl: string, apiKey: string, url: string): Promise<CatalogListItems<T>>;
}
/**
 * Request catalog items.
 *
 * {@link https://www.braze.com/docs/api/endpoints/catalogs/catalog_items/synchronous/get_catalog_items_details_bulk/}
 */
export declare function getListCatalogItems<T extends CatalogListItem>(apiUrl: string, apiKey: string, { catalog_name }: CatalogListItemsBody): Promise<CatalogListItems<T>>;
/**
 * Request catalog items.
 *
 * {@link https://www.braze.com/docs/api/endpoints/catalogs/catalog_items/synchronous/get_catalog_items_details_bulk/}
 */
export declare function getListCatalogItemsIterator<T extends CatalogListItem>(apiUrl: string, apiKey: string, body: CatalogListItemsBody): AsyncGenerator<T>;
export {};
//# sourceMappingURL=list_items.d.ts.map