import { IAppCheck, IAppCheckToken } from './common';
import { FirebaseApp, FirebaseError } from '@nativescript/firebase-core';
export declare class AppCheckToken implements IAppCheckToken {
    _native: com.google.firebase.appcheck.AppCheckToken;
    static fromNative(token: com.google.firebase.appcheck.AppCheckToken): AppCheckToken;
    get native(): com.google.firebase.appcheck.AppCheckToken;
    get android(): com.google.firebase.appcheck.AppCheckToken;
    get token(): string;
    get expireTimeMillis(): number;
}
export declare abstract class AppCheckProviderFactory {
    _native: com.google.firebase.appcheck.AppCheckProviderFactory;
    constructor();
    abstract createProvider(app: FirebaseApp): AppCheckProvider;
    get native(): com.google.firebase.appcheck.AppCheckProviderFactory;
}
export declare abstract class AppCheckProvider {
    _native: any;
    _callback: any;
    constructor();
    abstract getToken(done: (token: {
        token: string;
        expirationDate: Date;
    }, error: FirebaseError) => void): any;
    get native(): any;
}
export declare class AppCheck implements IAppCheck {
    _native: com.google.firebase.appcheck.FirebaseAppCheck;
    _nativeApp: any;
    constructor(app?: FirebaseApp);
    static setProviderFactory(custom?: AppCheckProviderFactory): void;
    activate(isTokenAutoRefreshEnabled: boolean): void;
    getToken(forceRefresh: boolean): Promise<AppCheckToken>;
    setTokenAutoRefreshEnabled(enabled: boolean): void;
    get native(): com.google.firebase.appcheck.FirebaseAppCheck;
    get ios(): com.google.firebase.appcheck.FirebaseAppCheck;
    _app: FirebaseApp;
    get app(): FirebaseApp;
}
