import { Airgram } from 'tdweb-airgram';
import { TdEventHandler } from './types';
export interface TdProviderConfig<AirgramContextT extends Airgram.Context> {
    airgram: Airgram<AirgramContextT>;
}
declare class TdProvider<AirgramContextT extends Airgram.Context = Airgram.Context> {
    static install: any;
    readonly airgram: Airgram.AirgramInstance<AirgramContextT>;
    private readonly eventBus;
    private isInitialized;
    constructor({ airgram }: TdProviderConfig<AirgramContextT>);
    off(eventName: string, handler: TdEventHandler): void;
    on(eventName: string, handler: TdEventHandler): () => void;
    once(eventName: string, handler: TdEventHandler): () => void;
    private initialize;
    private listen;
}
export { TdProvider };
