import { VerificationBase as Base } from "./Base";
import { MatrixEvent } from "../../models/event";
import { ShowSasCallbacks, VerifierEvent } from "../../crypto-api/verification";
export type { ShowSasCallbacks as ISasEvent, GeneratedSas as IGeneratedSas, EmojiMapping, } from "../../crypto-api/verification";
/** @deprecated use VerifierEvent */
export type SasEvent = VerifierEvent;
/** @deprecated use VerifierEvent */
export declare const SasEvent: typeof VerifierEvent;
/** @deprecated Avoid referencing this class directly; instead use {@link Crypto.Verifier}. */
export declare class SAS extends Base {
    private waitingForAccept?;
    ourSASPubKey?: string;
    theirSASPubKey?: string;
    sasEvent?: ShowSasCallbacks;
    static get NAME(): string;
    get events(): string[];
    protected doVerification: () => Promise<void>;
    canSwitchStartEvent(event: MatrixEvent): boolean;
    private sendStart;
    private verifyAndCheckMAC;
    private doSendVerification;
    private doRespondVerification;
    private sendMAC;
    private checkMAC;
    getShowSasCallbacks(): ShowSasCallbacks | null;
}
//# sourceMappingURL=SAS.d.ts.map