import { AccessToken, IConfig } from "../core";
export declare class JsApiTicket {
    static get(config: IConfig, agentId: string, accessToken: AccessToken): Promise<JsApiTicket>;
    static deSerialize(serialized: string, accessToken: AccessToken, ttlSeconds?: number): JsApiTicket;
    static fetch(config: IConfig, agentId: string, accessToken: AccessToken): Promise<JsApiTicket>;
    static key(corpId: string, agentId: string): string;
    corpId: string;
    ticket: string;
    expiresIn: number;
    createdAt: number;
    expiresAt: number;
    agentId: string;
    config?: IConfig;
    accessToken: AccessToken;
    constructor(corpId: string, ticket: string, expiresIn: number, agentId: string, accessToken: AccessToken, config?: IConfig);
    isExpired(): boolean;
    readonly key: string;
    readonly serialized: string;
    ensureNotExpired(): Promise<void>;
}
