/** * @param {object} params * @param {string | string[]} params.rpId * @param {string | Buffer} params.challengeSecret * @param {import('@exortek/challenge').IncrStore} params.challengeStore * @param {Array<{ id: string | Uint8Array, type?: string, transports?: string[] }>} [params.allowCredentials] * @param {'required' | 'preferred' | 'discouraged'} [params.userVerification] * @param {Array<'security-key' | 'client-device' | 'hybrid'>} [params.hints] * @param {number} [params.timeoutMs=60_000] * @param {object} [params.extensions] * @param {boolean} [params.conditional] * @param {string} [params.userId] * @param {string | number} [params.challengeExpiresIn='5m'] * @param {string} [params.challengePrefix] * @returns {Promise<{ * options: Record, * challengeToken: string, * }>} */ export function begin(params: { rpId: string | string[]; challengeSecret: string | Buffer; challengeStore: import("@exortek/challenge").IncrStore; allowCredentials?: { id: string | Uint8Array; type?: string; transports?: string[]; }[] | undefined; userVerification?: "preferred" | "required" | "discouraged" | undefined; hints?: ("security-key" | "client-device" | "hybrid")[] | undefined; timeoutMs?: number | undefined; extensions?: object | undefined; conditional?: boolean | undefined; userId?: string | undefined; challengeExpiresIn?: string | number | undefined; challengePrefix?: string | undefined; }): Promise<{ options: Record; challengeToken: string; }>;