import { StoreState } from '@airgram-dev/store';
import { AuthorizationStateUnion, BasicGroupFullInfoUnion, BasicGroupUnion, ChatUnion, ConnectionStateUnion, FileUnion, MessageUnion, OptionValueUnion, StickerSet, SupergroupFullInfoUnion, SupergroupUnion, UpdateUnion, UserFullInfoUnion, UserUnion } from '@airgram-dev/web';
import { VuexModule } from 'vuex-module-decorators';
export default class AirgramStore extends VuexModule implements StoreState {
    authorizationState: AuthorizationStateUnion | null;
    basicGroups: Record<number, BasicGroupUnion>;
    basicGroupFullInfo: Record<number, BasicGroupFullInfoUnion>;
    chats: Record<number, ChatUnion>;
    supergroups: Record<number, SupergroupUnion>;
    supergroupFullInfo: Record<number, SupergroupFullInfoUnion>;
    files: Record<number, FileUnion>;
    chatMessages: Record<number, number[]>;
    messages: Record<string, MessageUnion>;
    connectionState: ConnectionStateUnion;
    onlineMemberCount: Record<number, number>;
    options: Record<string, OptionValueUnion>;
    stickerSet: StickerSet | null;
    users: Record<number, UserUnion>;
    userFullInfo: Record<number, UserFullInfoUnion>;
    handleUpdate(update: UpdateUnion): void;
    resetState(): void;
}
