interface PuppetServiceAddress {
    host: string;
    port: number;
}
/**
 * Huan(202108): `insecure` is the default SNI for wechaty-puppet-service
 */
declare type WechatyTokenType = 'insecure' | 'uuid' | 'wxwork' | 'donut' | 'padlocal' | 'paimon' | 'xp' | string;
export interface WechatyTokenOptions {
    authority?: string;
    token: string;
}
declare class WechatyToken {
    static VERSION: string;
    version(): string;
    /**
     * Wechaty Token is a UUID prefixed with the SNI concated with a `_`
     *
     * @example "uuid_63d6b063-01e5-48b9-86ed-9fa2c05a6930"
     */
    static generate(type?: WechatyTokenType): string;
    /**
     * Instance
     */
    authority: string;
    sni?: string;
    token: string;
    constructor(options: string | WechatyTokenOptions);
    toString(): string;
    private discoverApi;
    discover(): Promise<undefined | PuppetServiceAddress>;
}
export { WechatyToken };
//# sourceMappingURL=wechaty-token.d.ts.map