/**
 * authentik
 * Making authentication simple.
 *
 * The version of the OpenAPI document: 2026.2.2-rc1
 * Contact: hello@goauthentik.io
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { ErrorDetail } from './ErrorDetail';
import type { ContextualFlowInfo } from './ContextualFlowInfo';
import type { FlowDesignationEnum } from './FlowDesignationEnum';
import type { LoginSource } from './LoginSource';
import type { CaptchaChallenge } from './CaptchaChallenge';
/**
 * Identification challenges with all UI elements
 * @export
 * @interface IdentificationChallenge
 */
export interface IdentificationChallenge {
    /**
     *
     * @type {ContextualFlowInfo}
     * @memberof IdentificationChallenge
     */
    flowInfo?: ContextualFlowInfo;
    /**
     *
     * @type {string}
     * @memberof IdentificationChallenge
     */
    component?: string;
    /**
     *
     * @type {{ [key: string]: Array<ErrorDetail>; }}
     * @memberof IdentificationChallenge
     */
    responseErrors?: {
        [key: string]: Array<ErrorDetail>;
    };
    /**
     *
     * @type {Array<string>}
     * @memberof IdentificationChallenge
     */
    userFields: Array<string> | null;
    /**
     *
     * @type {string}
     * @memberof IdentificationChallenge
     */
    pendingUserIdentifier?: string | null;
    /**
     *
     * @type {boolean}
     * @memberof IdentificationChallenge
     */
    passwordFields: boolean;
    /**
     *
     * @type {boolean}
     * @memberof IdentificationChallenge
     */
    allowShowPassword?: boolean;
    /**
     *
     * @type {string}
     * @memberof IdentificationChallenge
     */
    applicationPre?: string;
    /**
     *
     * @type {string}
     * @memberof IdentificationChallenge
     */
    applicationPreLaunch?: string;
    /**
     *
     * @type {FlowDesignationEnum}
     * @memberof IdentificationChallenge
     */
    flowDesignation: FlowDesignationEnum;
    /**
     *
     * @type {CaptchaChallenge}
     * @memberof IdentificationChallenge
     */
    captchaStage?: CaptchaChallenge | null;
    /**
     *
     * @type {string}
     * @memberof IdentificationChallenge
     */
    enrollUrl?: string;
    /**
     *
     * @type {string}
     * @memberof IdentificationChallenge
     */
    recoveryUrl?: string;
    /**
     *
     * @type {string}
     * @memberof IdentificationChallenge
     */
    passwordlessUrl?: string;
    /**
     *
     * @type {string}
     * @memberof IdentificationChallenge
     */
    primaryAction: string;
    /**
     *
     * @type {Array<LoginSource>}
     * @memberof IdentificationChallenge
     */
    sources?: Array<LoginSource>;
    /**
     *
     * @type {boolean}
     * @memberof IdentificationChallenge
     */
    showSourceLabels: boolean;
    /**
     *
     * @type {boolean}
     * @memberof IdentificationChallenge
     */
    enableRememberMe?: boolean;
    /**
     *
     * @type {{ [key: string]: any; }}
     * @memberof IdentificationChallenge
     */
    passkeyChallenge?: {
        [key: string]: any;
    } | null;
}
/**
 * Check if a given object implements the IdentificationChallenge interface.
 */
export declare function instanceOfIdentificationChallenge(value: object): value is IdentificationChallenge;
export declare function IdentificationChallengeFromJSON(json: any): IdentificationChallenge;
export declare function IdentificationChallengeFromJSONTyped(json: any, ignoreDiscriminator: boolean): IdentificationChallenge;
export declare function IdentificationChallengeToJSON(json: any): IdentificationChallenge;
export declare function IdentificationChallengeToJSONTyped(value?: IdentificationChallenge | null, ignoreDiscriminator?: boolean): any;
//# sourceMappingURL=IdentificationChallenge.d.ts.map