import React from "react";
import { SecretStorage } from "matrix-js-sdk/src/matrix";
export type KeyParams = {
    passphrase?: string;
    recoveryKey?: string;
};
interface IProps {
    keyInfo: SecretStorage.SecretStorageKeyDescription;
    checkPrivateKey: (k: KeyParams) => Promise<boolean>;
    onFinished(result?: false | KeyParams): void;
}
interface IState {
    recoveryKey: string;
    recoveryKeyValid: boolean | null;
    recoveryKeyCorrect: boolean | null;
    recoveryKeyFileError: boolean | null;
    forceRecoveryKey: boolean;
    passPhrase: string;
    keyMatches: boolean | null;
    resetting: boolean;
}
export default class AccessSecretStorageDialog extends React.PureComponent<IProps, IState> {
    private fileUpload;
    private inputRef;
    constructor(props: IProps);
    private onCancel;
    private onUseRecoveryKeyClick;
    private validateRecoveryKeyOnChange;
    private validateRecoveryKey;
    private onRecoveryKeyChange;
    private onRecoveryKeyFileChange;
    private onRecoveryKeyFileUploadClick;
    private onPassPhraseNext;
    private onRecoveryKeyNext;
    private onPassPhraseChange;
    private onResetAllClick;
    private onConfirmResetAllClick;
    private getKeyValidationText;
    render(): React.ReactNode;
}
export {};
