import { Channel, ChannelFilters, ChannelOptions, ChannelSort } from 'stream-chat';
import { ChannelService } from './channel.service';
import { ChannelQueryResult, ChannelQueryType, NextPageConfiguration } from './types';
import { ChatClientService } from './chat-client.service';
/**
 * This class allows you to make paginated channel query requests.
 */
export declare class ChannelQuery {
    private chatService;
    private channelService;
    private filters;
    private sort;
    private options;
    /**
     * By default the SDK uses an offset based pagination, you can change/extend this by providing your own custom paginator method.
     *
     * The method will be called with the result of the latest channel query.
     *
     * You can return either an offset, or a filter using the [`$lte`/`$gte` operator](/chat/docs/javascript/query_syntax_operators/). If you return a filter, it will be merged with the filter provided for the `init` method.
     */
    customPaginator?: (channelQueryResult: Channel[]) => NextPageConfiguration;
    private nextPageConfiguration?;
    constructor(chatService: ChatClientService, channelService: ChannelService, filters: ChannelFilters, sort?: ChannelSort, options?: ChannelOptions);
    query(queryType: ChannelQueryType): Promise<ChannelQueryResult>;
    setNextPageConfiguration(channelQueryResult: Channel[]): void;
}
