import { Request } from 'express'; import { MyContext, MyPubSubContext } from '../../app-base'; import { AppDomain } from '../type'; import { AuthToken, Rule } from './auth-type'; import { AuthBearerVerify } from './auth-type-verify'; export declare class AuthBearer { private static self; private identityUrl; private fnVerify; private serviceIdToken; private filter; private caches; private cacheMax; private cacheDuration; private constructor(); static init(urlOrfnVerify: string | AuthBearerVerify, serviceIdToken: string, orgId: number, appDomain: AppDomain, productId: number, cacheMax: number, cacheDuration: number): AuthBearer; static term(): void; static get instance(): AuthBearer; static get isEnabled(): boolean; get serviceIdTokenInfo(): { token: string; orgId: number; appDomain: AppDomain; productId: number; }; verifyIdToken(authToken: AuthToken, context: Request | MyContext | MyPubSubContext, flag: boolean, hasAbility: Rule): Promise; private callVerifyIdToken; private validateIdToken; }