interface Window {
    msCrypto: {
        getRandomValues: (array: Uint8Array) => Uint8Array;
        subtle: {
            digest: {
                (method: string, seed: unknown): typeof CryptoOperation | PromiseLike<ArrayBuffer>;
            };
        };
    };
    CryptoOperation: unknown;
}
declare const CryptoOperation: {
    [index: string]: unknown;
};
declare type Callback = (error: Error | null, value: {
    verifier: string;
    challenge: string;
}) => void;
declare function b64Uri(string: string): string;
declare function getPkce(length: number | undefined, callback: Callback): void;
declare function runCallback(callback: Callback, verifier: string, digest: ArrayBuffer): void;
