import * as core from "@terrascript/core";
export interface CompromisedCredentialsRiskConfigurationActionsArgs extends core.SchemaArgs {
    eventAction: string | core.StringOut;
}
export declare class CompromisedCredentialsRiskConfigurationActions extends core.Schema<CompromisedCredentialsRiskConfigurationActionsArgs> {
    eventAction: string | core.StringOut;
}
export interface CompromisedCredentialsRiskConfigurationArgs extends core.SchemaArgs {
    actions: CompromisedCredentialsRiskConfigurationActions;
    eventFilter?: core.Array<string> | core.ArrayOut<core.StringOut>;
}
export declare class CompromisedCredentialsRiskConfiguration extends core.Schema<CompromisedCredentialsRiskConfigurationArgs> {
    actions: CompromisedCredentialsRiskConfigurationActions;
    eventFilter?: core.Array<string> | core.ArrayOut<core.StringOut>;
}
export interface RiskExceptionConfigurationArgs extends core.SchemaArgs {
    blockedIpRangeList?: core.Array<string> | core.ArrayOut<core.StringOut>;
    skippedIpRangeList?: core.Array<string> | core.ArrayOut<core.StringOut>;
}
export declare class RiskExceptionConfiguration extends core.Schema<RiskExceptionConfigurationArgs> {
    blockedIpRangeList?: core.Array<string> | core.ArrayOut<core.StringOut>;
    skippedIpRangeList?: core.Array<string> | core.ArrayOut<core.StringOut>;
}
export interface MediumActionArgs extends core.SchemaArgs {
    eventAction: string | core.StringOut;
    notify: boolean | core.BooleanOut;
}
export declare class MediumAction extends core.Schema<MediumActionArgs> {
    eventAction: string | core.StringOut;
    notify: boolean | core.BooleanOut;
}
export interface HighActionArgs extends core.SchemaArgs {
    eventAction: string | core.StringOut;
    notify: boolean | core.BooleanOut;
}
export declare class HighAction extends core.Schema<HighActionArgs> {
    eventAction: string | core.StringOut;
    notify: boolean | core.BooleanOut;
}
export interface LowActionArgs extends core.SchemaArgs {
    eventAction: string | core.StringOut;
    notify: boolean | core.BooleanOut;
}
export declare class LowAction extends core.Schema<LowActionArgs> {
    eventAction: string | core.StringOut;
    notify: boolean | core.BooleanOut;
}
export interface AccountTakeoverRiskConfigurationActionsArgs extends core.SchemaArgs {
    highAction?: HighAction;
    lowAction?: LowAction;
    mediumAction?: MediumAction;
}
export declare class AccountTakeoverRiskConfigurationActions extends core.Schema<AccountTakeoverRiskConfigurationActionsArgs> {
    highAction?: HighAction;
    lowAction?: LowAction;
    mediumAction?: MediumAction;
}
export interface MfaEmailArgs extends core.SchemaArgs {
    htmlBody: string | core.StringOut;
    subject: string | core.StringOut;
    textBody: string | core.StringOut;
}
export declare class MfaEmail extends core.Schema<MfaEmailArgs> {
    htmlBody: string | core.StringOut;
    subject: string | core.StringOut;
    textBody: string | core.StringOut;
}
export interface NoActionEmailArgs extends core.SchemaArgs {
    htmlBody: string | core.StringOut;
    subject: string | core.StringOut;
    textBody: string | core.StringOut;
}
export declare class NoActionEmail extends core.Schema<NoActionEmailArgs> {
    htmlBody: string | core.StringOut;
    subject: string | core.StringOut;
    textBody: string | core.StringOut;
}
export interface BlockEmailArgs extends core.SchemaArgs {
    htmlBody: string | core.StringOut;
    subject: string | core.StringOut;
    textBody: string | core.StringOut;
}
export declare class BlockEmail extends core.Schema<BlockEmailArgs> {
    htmlBody: string | core.StringOut;
    subject: string | core.StringOut;
    textBody: string | core.StringOut;
}
export interface NotifyConfigurationArgs extends core.SchemaArgs {
    blockEmail?: BlockEmail;
    from?: string | core.StringOut;
    mfaEmail?: MfaEmail;
    noActionEmail?: NoActionEmail;
    replyTo?: string | core.StringOut;
    sourceArn: string | core.StringOut;
}
export declare class NotifyConfiguration extends core.Schema<NotifyConfigurationArgs> {
    blockEmail?: BlockEmail;
    from?: string | core.StringOut;
    mfaEmail?: MfaEmail;
    noActionEmail?: NoActionEmail;
    replyTo?: string | core.StringOut;
    sourceArn: string | core.StringOut;
}
export interface AccountTakeoverRiskConfigurationArgs extends core.SchemaArgs {
    actions: AccountTakeoverRiskConfigurationActions;
    notifyConfiguration: NotifyConfiguration;
}
export declare class AccountTakeoverRiskConfiguration extends core.Schema<AccountTakeoverRiskConfigurationArgs> {
    actions: AccountTakeoverRiskConfigurationActions;
    notifyConfiguration: NotifyConfiguration;
}
export interface RiskConfigurationArgs extends core.ResourceArgs {
    accountTakeoverRiskConfiguration?: AccountTakeoverRiskConfiguration;
    clientId?: string | core.StringOut;
    compromisedCredentialsRiskConfiguration?: CompromisedCredentialsRiskConfiguration;
    riskExceptionConfiguration?: RiskExceptionConfiguration;
    userPoolId: string | core.StringOut;
}
export declare class RiskConfiguration extends core.Resource<RiskConfigurationArgs> {
    accountTakeoverRiskConfiguration?: AccountTakeoverRiskConfiguration;
    clientId?: string | core.StringOut;
    compromisedCredentialsRiskConfiguration?: CompromisedCredentialsRiskConfiguration;
    id: string | core.StringOut;
    riskExceptionConfiguration?: RiskExceptionConfiguration;
    userPoolId: string | core.StringOut;
    constructor(name: string, args?: RiskConfigurationArgs);
    getNamespace(): string;
}
//# sourceMappingURL=risk_configuration.d.ts.map