import { TurboModule } from 'react-native';
export interface Spec extends TurboModule {
    getDeviceInfo(): string;
    saveData(key: string, data: string): void;
    getData(key: string): string | undefined;
    removeData(key: string): void;
    encryptData(data: string): string;
    decryptData(data: string): string;
    deleteKey(): void;
    resetPreferences(): void;
    configureDfp(publicToken: string, dfppaDomain: string): void;
    getTelemetryId(): Promise<string>;
    configureCaptcha(siteKey: string): void;
    getCAPTCHAToken(): Promise<string>;
    isCaptchaConfigured(): boolean;
    generateCodeVerifier(): string;
    generateCodeChallenge(verifier: string): string;
    signEd25519(key: string, data: string): string;
    generateEd25519KeyPair(): string[];
    deriveEd25519PublicKeyFromPrivateKeyBytes(privateKeyBytes: string): string;
    getBiometricsAvailability(sessionDurationMinutes: number, androidAllowDeviceCredentials?: boolean, androidTitle?: string, androidSubTitle?: string, androidNegativeButtonText?: string, androidAllowFallbackToCleartext?: boolean, iosReason?: string, iosFallbackTitle?: string, iosCancelTitle?: string): Promise<string>;
    registerBiometrics(sessionDurationMinutes: number, androidAllowDeviceCredentials?: boolean, androidTitle?: string, androidSubTitle?: string, androidNegativeButtonText?: string, androidAllowFallbackToCleartext?: boolean, iosReason?: string, iosFallbackTitle?: string, iosCancelTitle?: string): Promise<string>;
    authenticateBiometrics(sessionDurationMinutes: number, androidAllowDeviceCredentials?: boolean, androidTitle?: string, androidSubTitle?: string, androidNegativeButtonText?: string, androidAllowFallbackToCleartext?: boolean, iosReason?: string, iosFallbackTitle?: string, iosCancelTitle?: string): Promise<string>;
    persistBiometricRegistration(registrationId: string, privateKeyData: string): Promise<void>;
    removeBiometricRegistration(): Promise<void>;
    createPublicKeyCredential(domain: string, preferImmediatelyAvailableCredentials: boolean, json: string, sessionDurationMinutes?: number): Promise<string>;
    getPublicKeyCredential(domain: string, preferImmediatelyAvailableCredentials: boolean, json: string, sessionDurationMinutes?: number): Promise<string>;
    getOAuthToken(type: string, baseUrl: string, publicToken: string, loginRedirectUrl?: string, signupRedirectUrl?: string, customScopes?: string[], providerParams?: string, oauthAttachToken?: string, sessionDurationMinutes?: number, googleCredentialConfiguration?: string): Promise<string>;
    startBrowserFlow(url: string): Promise<string>;
    getLegacySessionData(publicToken: string, vertical: string): Promise<string | undefined>;
}
declare const module: Spec | null;
export default module;
declare global {
    var StytchBridge: Spec;
}
//# sourceMappingURL=NativeStytchBridge.d.ts.map