import { tl } from '../../../tl/index.js';
import { ITelegramClient } from '../../client.types.js';
import { ArrayPaginated, Message } from '../../types/index.js';
export interface SearchGlobalOffset {
    rate: number;
    peer: tl.TypeInputPeer;
    id: number;
}
/**
 * Search for messages globally from all of your chats
 *
 * **Note**: Due to Telegram limitations, you can only get up to ~10000 messages
 *
 * @param params  Search parameters
 */
export declare function searchGlobal(client: ITelegramClient, params?: {
    /**
     * Text query string. Use `"@"` to search for mentions.
     *
     * @default `""` (empty string)
     */
    query?: string;
    /**
     * Limits the number of messages to be retrieved.
     *
     * @default  100
     */
    limit?: number;
    /**
     * Filter the results using some filter. (see {@link SearchFilters})
     *
     * @default  {@link SearchFilters.Empty} (i.e. will return all messages)
     */
    filter?: tl.TypeMessagesFilter;
    /**
     * Offset data used for pagination
     */
    offset?: SearchGlobalOffset;
    /**
     * Only return messages newer than this date
     */
    minDate?: Date | number;
    /**
     * Only return messages older than this date
     */
    maxDate?: Date | number;
    /**
     * Whether to only search across broadcast channels
     */
    onlyChannels?: boolean;
}): Promise<ArrayPaginated<Message, SearchGlobalOffset>>;
