import { Airgram, BaseTdObject, Instance } from '@airgram/web';
import { UpdateHandler } from './types';
export interface TdProviderConfig {
    airgram: Airgram;
}
declare class AirgramProvider {
    static install: any;
    readonly airgram: Instance;
    private readonly eventBus;
    private isInitialized;
    constructor({ airgram }: TdProviderConfig);
    off<UpdateT extends BaseTdObject>(eventName: string, handler: UpdateHandler<UpdateT>): void;
    on<UpdateT extends BaseTdObject>(eventName: string, handler: UpdateHandler<UpdateT>): () => void;
    once<UpdateT extends BaseTdObject>(eventName: string, handler: UpdateHandler<UpdateT>): () => void;
    private initialize;
    private listen;
}
export { AirgramProvider };
