export interface VariableEntry {
    /** The name of the variable. */
    name?: string;
    /** The data type of the variable. */
    dataType?: string;
    /** The data source of the variable. */
    dataSource?: string;
    /** The default value of the variable. */
    defaultValue?: string;
    /** The description of the variable. */
    description?: string;
    /** The type of the variable. For more information see Variable types. Valid Values: AUTH_CODE | AVS | BILLING_ADDRESS_L1 | BILLING_ADDRESS_L2 | BILLING_CITY | BILLING_COUNTRY | BILLING_NAME | BILLING_PHO */
    variableType?: string;
}
export interface Tag {
    /** A tag key. */
    key: string;
    /** A value assigned to a tag key. */
    value: string;
}
export interface Rule {
    /** The detector for which the rule is associated. */
    detectorId: string;
    /** The rule ID. */
    ruleId: string;
    /** The rule version. */
    ruleVersion: string;
}
export interface ModelVersion {
    /** The model ID. */
    modelId: string;
    /** The model type. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The model version number. */
    modelVersionNumber: string;
    /** The model version ARN. */
    arn?: string;
}
export interface LabelSchema {
    /** The label mapper maps the Amazon Fraud Detector supported model classification labels (FRAUD, LEGIT) to the appropriate event type labels. For example, if "FRAUD" and "LEGIT" are Amazon Fraud Detector */
    labelMapper?: Record<string, any>;
    /** The action to take for unlabeled events. Use IGNORE if you want the unlabeled events to be ignored. This is recommended when the majority of the events in the dataset are labeled. Use FRAUD if you wan */
    unlabeledEventsTreatment?: 'IGNORE' | 'FRAUD' | 'LEGIT' | 'AUTO';
}
export interface TrainingDataSchema {
    /** The training data schema variables. */
    modelVariables: string[];
    labelSchema?: LabelSchema;
}
export interface ExternalEventsDetail {
    /** The Amazon S3 bucket location for the data. */
    dataLocation: string;
    /** The ARN of the role that provides Amazon Fraud Detector access to the data location. */
    dataAccessRoleArn: string;
}
export interface IngestedEventsTimeWindow {
    /** Timestamp of the first ingensted event. */
    startTime: string;
    /** Timestamp of the final ingested event. */
    endTime: string;
}
export interface IngestedEventsDetail {
    /** The start and stop time of the ingested events. */
    ingestedEventsTimeWindow: IngestedEventsTimeWindow;
}
export interface Entity {
    /** The entity type. */
    entityType: string;
    /** The entity ID. If you do not know the entityId, you can pass unknown, which is areserved string literal. */
    entityId: string;
}
export interface ModelEndpointDataBlob {
    /** The byte buffer of the Amazon SageMaker model endpoint input data blob. */
    byteBuffer?: string;
    /** The content type of the Amazon SageMaker model endpoint input data blob. */
    contentType?: string;
}
export interface FilterCondition {
    /** A statement containing a resource property and a value to specify filter condition. */
    value?: string;
}
export interface PredictionTimeRange {
    /** The start time of the time period for when the predictions were generated. */
    startTime: string;
    /** The end time of the time period for when the predictions were generated. */
    endTime: string;
}
export interface EventOrchestration {
    /** Specifies if event orchestration is enabled through Amazon EventBridge. */
    eventBridgeEnabled: boolean;
}
export interface ModelInputConfiguration {
    /** The event type name. */
    eventTypeName?: string;
    /** The format of the model input configuration. The format differs depending on if it is passed through to SageMaker or constructed by Amazon Fraud Detector. */
    format?: 'TEXT_CSV' | 'APPLICATION_JSON';
    /** The event variables. */
    useEventVariables: boolean;
    /** Template for constructing the JSON input-data sent to SageMaker. At event-evaluation, the placeholders for variable names in the template will be replaced with the variable values before being sent to */
    jsonInputTemplate?: string;
    /** Template for constructing the CSV input-data sent to SageMaker. At event-evaluation, the placeholders for variable-names in the template will be replaced with the variable values before being sent to  */
    csvInputTemplate?: string;
}
export interface ModelOutputConfiguration {
    /** The format of the model output configuration. */
    format: 'TEXT_CSV' | 'APPLICATION_JSONLINES';
    /** A map of JSON keys in response from SageMaker to the Amazon Fraud Detector variables. */
    jsonKeyToVariableMap?: Record<string, string>;
    /** A map of CSV index values in the SageMaker response to the Amazon Fraud Detector variables. */
    csvIndexToVariableMap?: Record<string, string>;
}
export interface BatchCreateVariableInput {
    /** The list of variables for the batch create variable request. */
    variableEntries: VariableEntry[];
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface BatchGetVariableInput {
    /** The list of variable names to get. */
    names: string[];
}
export interface CancelBatchImportJobInput {
    /** The ID of an in-progress batch import job to cancel. Amazon Fraud Detector will throw an error if the batch import job is in FAILED, CANCELED, or COMPLETED state. */
    jobId: string;
}
export interface CancelBatchPredictionJobInput {
    /** The ID of the batch prediction job to cancel. */
    jobId: string;
}
export interface CreateBatchImportJobInput {
    /** The name of the event type. */
    eventTypeName: string;
    /** The ARN of the IAM role created for Amazon S3 bucket that holds your data file. The IAM role must have read permissions to your input S3 bucket and write permissions to your output S3 bucket. For more */
    iamRoleArn: string;
    /** The URI that points to the Amazon S3 location of your data file. */
    inputPath: string;
    /** The ID of the batch import job. The ID cannot be of a past job, unless the job exists in CREATE_FAILED state. */
    jobId: string;
    /** The URI that points to the Amazon S3 location for storing your results. */
    outputPath: string;
    /** A collection of key-value pairs associated with this request. */
    tags?: Tag[];
}
export interface CreateBatchPredictionJobInput {
    /** The name of the detector. */
    detectorName: string;
    /** The name of the event type. */
    eventTypeName: string;
    /** The ARN of the IAM role to use for this job request. The IAM Role must have read permissions to your input S3 bucket and write permissions to your output S3 bucket. For more information about bucket p */
    iamRoleArn: string;
    /** The Amazon S3 location of your training file. */
    inputPath: string;
    /** The ID of the batch prediction job. */
    jobId: string;
    /** The Amazon S3 location of your output file. */
    outputPath: string;
    /** The detector version. */
    detectorVersion?: string;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface CreateDetectorVersionInput {
    /** The ID of the detector under which you want to create a new version. */
    detectorId: string;
    /** The rules to include in the detector version. */
    rules: Rule[];
    /** The description of the detector version. */
    description?: string;
    /** The Amazon Sagemaker model endpoints to include in the detector version. */
    externalModelEndpoints?: string[];
    /** The model versions to include in the detector version. */
    modelVersions?: ModelVersion[];
    /** The rule execution mode for the rules included in the detector version. You can define and edit the rule mode at the detector version level, when it is in draft status. If you specify FIRST_MATCHED, A */
    ruleExecutionMode?: 'ALL_MATCHED' | 'FIRST_MATCHED';
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface CreateListInput {
    /** The name of the list. */
    name: string;
    /** The description of the list. */
    description?: string;
    /** The names of the elements, if providing. You can also create an empty list and add elements later using the UpdateList API. */
    elements?: string[];
    /** A collection of the key and value pairs. */
    tags?: Tag[];
    /** The variable type of the list. You can only assign the variable type with String data type. For more information, see Variable types. */
    variableType?: string;
}
export interface CreateModelInput {
    /** The name of the event type. */
    eventTypeName: string;
    /** The model ID. */
    modelId: string;
    /** The model type. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The model description. */
    description?: string;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface CreateModelVersionInput {
    /** The model ID. */
    modelId: string;
    /** The model type. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The training data schema. */
    trainingDataSchema: TrainingDataSchema;
    /** The training data source location in Amazon S3. */
    trainingDataSource: 'EXTERNAL_EVENTS' | 'INGESTED_EVENTS';
    /** Details of the external events data used for model version training. Required if trainingDataSource is EXTERNAL_EVENTS. */
    externalEventsDetail?: ExternalEventsDetail;
    /** Details of the ingested events data used for model version training. Required if trainingDataSource is INGESTED_EVENTS. */
    ingestedEventsDetail?: IngestedEventsDetail;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface CreateRuleInput {
    /** The detector ID for the rule's parent detector. */
    detectorId: string;
    /** The rule expression. */
    expression: string;
    /** The language of the rule. */
    language: 'DETECTORPL';
    /** The outcome or outcomes returned when the rule expression matches. */
    outcomes: string[];
    /** The rule ID. */
    ruleId: string;
    /** The rule description. */
    description?: string;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface CreateVariableInput {
    /** The source of the data. */
    dataSource: 'EVENT' | 'MODEL_SCORE' | 'EXTERNAL_MODEL_SCORE';
    /** The data type of the variable. */
    dataType: 'STRING' | 'INTEGER' | 'FLOAT' | 'BOOLEAN' | 'DATETIME';
    /** The default value for the variable when no value is received. */
    defaultValue: string;
    /** The name of the variable. */
    name: string;
    /** The description. */
    description?: string;
    /** A collection of key and value pairs. */
    tags?: Tag[];
    /** The variable type. For more information see Variable types. Valid Values: AUTH_CODE | AVS | BILLING_ADDRESS_L1 | BILLING_ADDRESS_L2 | BILLING_CITY | BILLING_COUNTRY | BILLING_NAME | BILLING_PHONE | BI */
    variableType?: string;
}
export interface DeleteBatchImportJobInput {
    /** The ID of the batch import job to delete. */
    jobId: string;
}
export interface DeleteBatchPredictionJobInput {
    /** The ID of the batch prediction job to delete. */
    jobId: string;
}
export interface DeleteDetectorInput {
    /** The ID of the detector to delete. */
    detectorId: string;
}
export interface DeleteDetectorVersionInput {
    /** The ID of the parent detector for the detector version to delete. */
    detectorId: string;
    /** The ID of the detector version to delete. */
    detectorVersionId: string;
}
export interface DeleteEntityTypeInput {
    /** The name of the entity type to delete. */
    name: string;
}
export interface DeleteEventInput {
    /** The ID of the event to delete. */
    eventId: string;
    /** The name of the event type. */
    eventTypeName: string;
    /** Specifies whether or not to delete any predictions associated with the event. If set to True, */
    deleteAuditHistory?: boolean;
}
export interface DeleteEventsByEventTypeInput {
    /** The name of the event type. */
    eventTypeName: string;
}
export interface DeleteEventTypeInput {
    /** The name of the event type to delete. */
    name: string;
}
export interface DeleteExternalModelInput {
    /** The endpoint of the Amazon Sagemaker model to delete. */
    modelEndpoint: string;
}
export interface DeleteLabelInput {
    /** The name of the label to delete. */
    name: string;
}
export interface DeleteListInput {
    /** The name of the list to delete. */
    name: string;
}
export interface DeleteModelInput {
    /** The model ID of the model to delete. */
    modelId: string;
    /** The model type of the model to delete. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
}
export interface DeleteModelVersionInput {
    /** The model ID of the model version to delete. */
    modelId: string;
    /** The model type of the model version to delete. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The model version number of the model version to delete. */
    modelVersionNumber: string;
}
export interface DeleteOutcomeInput {
    /** The name of the outcome to delete. */
    name: string;
}
export interface DeleteRuleInput {
    rule: Rule;
}
export interface DeleteVariableInput {
    /** The name of the variable to delete. */
    name: string;
}
export interface DescribeDetectorInput {
    /** The detector ID. */
    detectorId: string;
    /** The maximum number of results to return for the request. */
    maxResults?: number;
    /** The next token from the previous response. */
    nextToken?: string;
}
export interface DescribeModelVersionsInput {
    /** The maximum number of results to return. */
    maxResults?: number;
    /** The model ID. */
    modelId?: string;
    /** The model type. */
    modelType?: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The model version number. */
    modelVersionNumber?: string;
    /** The next token from the previous results. */
    nextToken?: string;
}
export interface GetBatchImportJobsInput {
    /** The ID of the batch import job to get. */
    jobId?: string;
    /** The maximum number of objects to return for request. */
    maxResults?: number;
    /** The next token from the previous request. */
    nextToken?: string;
}
export interface GetBatchPredictionJobsInput {
    /** The batch prediction job for which to get the details. */
    jobId?: string;
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The next token from the previous request. */
    nextToken?: string;
}
export interface GetDeleteEventsByEventTypeStatusInput {
    /** Name of event type for which to get the deletion status. */
    eventTypeName: string;
}
export interface GetDetectorsInput {
    /** The detector ID. */
    detectorId?: string;
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The next token for the subsequent request. */
    nextToken?: string;
}
export interface GetDetectorVersionInput {
    /** The detector ID. */
    detectorId: string;
    /** The detector version ID. */
    detectorVersionId: string;
}
export interface GetEntityTypesInput {
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The name. */
    name?: string;
    /** The next token for the subsequent request. */
    nextToken?: string;
}
export interface GetEventInput {
    /** The ID of the event to retrieve. */
    eventId: string;
    /** The event type of the event to retrieve. */
    eventTypeName: string;
}
export interface GetEventPredictionInput {
    /** The detector ID. */
    detectorId: string;
    /** The entity type (associated with the detector's event type) and specific entity ID representing who performed the event. If an entity id is not available, use "UNKNOWN." */
    entities: Entity[];
    /** The unique ID used to identify the event. */
    eventId: string;
    /** Timestamp that defines when the event under evaluation occurred. The timestamp must be specified using ISO 8601 standard in UTC. */
    eventTimestamp: string;
    /** The event type associated with the detector specified for the prediction. */
    eventTypeName: string;
    /** Names of the event type's variables you defined in Amazon Fraud Detector to represent data elements and their corresponding values for the event you are sending for evaluation. You must provide at lea */
    eventVariables: Record<string, string>;
    /** The detector version ID. */
    detectorVersionId?: string;
    /** The Amazon SageMaker model endpoint input data blobs. */
    externalModelEndpointDataBlobs?: Record<string, ModelEndpointDataBlob>;
}
export interface GetEventPredictionMetadataInput {
    /** The detector ID. */
    detectorId: string;
    /** The detector version ID. */
    detectorVersionId: string;
    /** The event ID. */
    eventId: string;
    /** The event type associated with the detector specified for the prediction. */
    eventTypeName: string;
    /** The timestamp that defines when the prediction was generated. The timestamp must be specified using ISO 8601 standard in UTC. We recommend calling ListEventPredictions first, and using the predictionT */
    predictionTimestamp: string;
}
export interface GetEventTypesInput {
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The name. */
    name?: string;
    /** The next token for the subsequent request. */
    nextToken?: string;
}
export interface GetExternalModelsInput {
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The Amazon SageMaker model endpoint. */
    modelEndpoint?: string;
    /** The next page token for the request. */
    nextToken?: string;
}
export interface GetLabelsInput {
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The name of the label or labels to get. */
    name?: string;
    /** The next token for the subsequent request. */
    nextToken?: string;
}
export interface GetListElementsInput {
    /** The name of the list. */
    name: string;
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The next token for the subsequent request. */
    nextToken?: string;
}
export interface GetListsMetadataInput {
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The name of the list. */
    name?: string;
    /** The next token for the subsequent request. */
    nextToken?: string;
}
export interface GetModelsInput {
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The model ID. */
    modelId?: string;
    /** The model type. */
    modelType?: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The next token for the subsequent request. */
    nextToken?: string;
}
export interface GetModelVersionInput {
    /** The model ID. */
    modelId: string;
    /** The model type. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The model version number. */
    modelVersionNumber: string;
}
export interface GetOutcomesInput {
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The name of the outcome or outcomes to get. */
    name?: string;
    /** The next page token for the request. */
    nextToken?: string;
}
export interface GetRulesInput {
    /** The detector ID. */
    detectorId: string;
    /** The maximum number of rules to return for the request. */
    maxResults?: number;
    /** The next page token. */
    nextToken?: string;
    /** The rule ID. */
    ruleId?: string;
    /** The rule version. */
    ruleVersion?: string;
}
export interface GetVariablesInput {
    /** The max size per page determined for the get variable request. */
    maxResults?: number;
    /** The name of the variable. */
    name?: string;
    /** The next page token of the get variable request. */
    nextToken?: string;
}
export interface ListEventPredictionsInput {
    /** The detector ID. */
    detectorId?: FilterCondition;
    /** The detector version ID. */
    detectorVersionId?: FilterCondition;
    /** The event ID. */
    eventId?: FilterCondition;
    /** The event type associated with the detector. */
    eventType?: FilterCondition;
    /** The maximum number of predictions to return for the request. */
    maxResults?: number;
    /** Identifies the next page of results to return. Use the token to make the call again to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. */
    nextToken?: string;
    /** The time period for when the predictions were generated. */
    predictionTimeRange?: PredictionTimeRange;
}
export interface ListTagsForResourceInput {
    /** The ARN that specifies the resource whose tags you want to list. */
    resourceARN: string;
    /** The maximum number of objects to return for the request. */
    maxResults?: number;
    /** The next token from the previous results. */
    nextToken?: string;
}
export interface PutDetectorInput {
    /** The detector ID. */
    detectorId: string;
    /** The name of the event type. */
    eventTypeName: string;
    /** The description of the detector. */
    description?: string;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface PutEntityTypeInput {
    /** The name of the entity type. */
    name: string;
    /** The description. */
    description?: string;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface PutEventTypeInput {
    /** The entity type for the event type. Example entity types: customer, merchant, account. */
    entityTypes: string[];
    /** The event type variables. */
    eventVariables: string[];
    /** The name. */
    name: string;
    /** The description of the event type. */
    description?: string;
    /** Specifies if ingestion is enabled or disabled. */
    eventIngestion?: 'ENABLED' | 'DISABLED';
    /** Enables or disables event orchestration. If enabled, you can send event predictions to select AWS services for downstream processing of the events. */
    eventOrchestration?: EventOrchestration;
    /** The event type labels. */
    labels?: string[];
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface PutExternalModelInput {
    /** The model endpoint input configuration. */
    inputConfiguration: ModelInputConfiguration;
    /** The IAM role used to invoke the model endpoint. */
    invokeModelEndpointRoleArn: string;
    /** The model endpoints name. */
    modelEndpoint: string;
    /** The model endpoint’s status in Amazon Fraud Detector. */
    modelEndpointStatus: 'ASSOCIATED' | 'DISSOCIATED';
    /** The source of the model. */
    modelSource: 'SAGEMAKER';
    /** The model endpoint output configuration. */
    outputConfiguration: ModelOutputConfiguration;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface PutKMSEncryptionKeyInput {
    /** The KMS encryption key ARN. The KMS key must be single-Region key. Amazon Fraud Detector does not support multi-Region KMS key. */
    kmsEncryptionKeyArn: string;
}
export interface PutLabelInput {
    /** The label name. */
    name: string;
    /** The label description. */
    description?: string;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface PutOutcomeInput {
    /** The name of the outcome. */
    name: string;
    /** The outcome description. */
    description?: string;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface SendEventInput {
    /** An array of entities. */
    entities: Entity[];
    /** The event ID to upload. */
    eventId: string;
    /** The timestamp that defines when the event under evaluation occurred. The timestamp must be specified using ISO 8601 standard in UTC. */
    eventTimestamp: string;
    /** The event type name of the event. */
    eventTypeName: string;
    /** Names of the event type's variables you defined in Amazon Fraud Detector to represent data elements and their corresponding values for the event you are sending for evaluation. */
    eventVariables: Record<string, string>;
    /** The label to associate with the event. Required if specifying labelTimestamp. */
    assignedLabel?: string;
    /** The timestamp associated with the label. Required if specifying assignedLabel. */
    labelTimestamp?: string;
}
export interface TagResourceInput {
    /** The resource ARN. */
    resourceARN: string;
    /** The tags to assign to the resource. */
    tags: Tag[];
}
export interface UntagResourceInput {
    /** The ARN of the resource from which to remove the tag. */
    resourceARN: string;
    /** The resource ARN. */
    tagKeys: string[];
}
export interface UpdateDetectorVersionInput {
    /** The parent detector ID for the detector version you want to update. */
    detectorId: string;
    /** The detector version ID. */
    detectorVersionId: string;
    /** The Amazon SageMaker model endpoints to include in the detector version. */
    externalModelEndpoints: string[];
    /** The rules to include in the detector version. */
    rules: Rule[];
    /** The detector version description. */
    description?: string;
    /** The model versions to include in the detector version. */
    modelVersions?: ModelVersion[];
    /** The rule execution mode to add to the detector. If you specify FIRST_MATCHED, Amazon Fraud Detector evaluates rules sequentially, first to last, stopping at the first matched rule. Amazon Fraud dectec */
    ruleExecutionMode?: 'ALL_MATCHED' | 'FIRST_MATCHED';
}
export interface UpdateDetectorVersionMetadataInput {
    /** The description. */
    description: string;
    /** The detector ID. */
    detectorId: string;
    /** The detector version ID. */
    detectorVersionId: string;
}
export interface UpdateDetectorVersionStatusInput {
    /** The detector ID. */
    detectorId: string;
    /** The detector version ID. */
    detectorVersionId: string;
    /** The new status. The only supported values are ACTIVE and INACTIVE */
    status: 'DRAFT' | 'ACTIVE' | 'INACTIVE';
}
export interface UpdateEventLabelInput {
    /** The new label to assign to the event. */
    assignedLabel: string;
    /** The ID of the event associated with the label to update. */
    eventId: string;
    /** The event type of the event associated with the label to update. */
    eventTypeName: string;
    /** The timestamp associated with the label. The timestamp must be specified using ISO 8601 standard in UTC. */
    labelTimestamp: string;
}
export interface UpdateListInput {
    /** The name of the list to update. */
    name: string;
    /** The new description. */
    description?: string;
    /** One or more list elements to add or replace. If you are providing the elements, make sure to specify the updateMode to use. If you are deleting all elements from the list, use REPLACE for the updateMo */
    elements?: string[];
    /** The update mode (type). Use APPEND if you are adding elements to the list. Use REPLACE if you replacing existing elements in the list. Use REMOVE if you are removing elements from the list. */
    updateMode?: 'REPLACE' | 'APPEND' | 'REMOVE';
    /** The variable type you want to assign to the list. You cannot update a variable type of a list that already has a variable type assigned to it. You can assign a variable type to a list only if the list */
    variableType?: string;
}
export interface UpdateModelInput {
    /** The model ID. */
    modelId: string;
    /** The model type. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The new model description. */
    description?: string;
}
export interface UpdateModelVersionInput {
    /** The major version number. */
    majorVersionNumber: string;
    /** The model ID. */
    modelId: string;
    /** The model type. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The details of the external events data used for training the model version. Required if trainingDataSource is EXTERNAL_EVENTS. */
    externalEventsDetail?: ExternalEventsDetail;
    /** The details of the ingested event used for training the model version. Required if your trainingDataSource is INGESTED_EVENTS. */
    ingestedEventsDetail?: IngestedEventsDetail;
    /** A collection of key and value pairs. */
    tags?: Tag[];
}
export interface UpdateModelVersionStatusInput {
    /** The model ID of the model version to update. */
    modelId: string;
    /** The model type. */
    modelType: 'ONLINE_FRAUD_INSIGHTS' | 'TRANSACTION_FRAUD_INSIGHTS' | 'ACCOUNT_TAKEOVER_INSIGHTS';
    /** The model version number. */
    modelVersionNumber: string;
    /** The model version status. */
    status: 'ACTIVE' | 'INACTIVE' | 'TRAINING_CANCELLED';
}
export interface UpdateRuleMetadataInput {
    /** The rule description. */
    description: string;
    /** The rule to update. */
    rule: Rule;
}
export interface UpdateRuleVersionInput {
    /** The rule expression. */
    expression: string;
    /** The language. */
    language: 'DETECTORPL';
    /** The outcomes. */
    outcomes: string[];
    /** The rule to update. */
    rule: Rule;
    /** The description. */
    description?: string;
    /** The tags to assign to the rule version. */
    tags?: Tag[];
}
export interface UpdateVariableInput {
    /** The name of the variable. */
    name: string;
    /** The new default value of the variable. */
    defaultValue?: string;
    /** The new description. */
    description?: string;
    /** The variable type. For more information see Variable types. */
    variableType?: string;
}
/** FraudDetector service binding for Step Functions SDK integrations. */
export declare class FraudDetector {
    constructor();
    batchCreateVariable<T>(params: BatchCreateVariableInput): Promise<T>;
    batchGetVariable<T>(params: BatchGetVariableInput): Promise<T>;
    cancelBatchImportJob<T>(params: CancelBatchImportJobInput): Promise<T>;
    cancelBatchPredictionJob<T>(params: CancelBatchPredictionJobInput): Promise<T>;
    createBatchImportJob<T>(params: CreateBatchImportJobInput): Promise<T>;
    createBatchPredictionJob<T>(params: CreateBatchPredictionJobInput): Promise<T>;
    createDetectorVersion<T>(params: CreateDetectorVersionInput): Promise<T>;
    createList<T>(params: CreateListInput): Promise<T>;
    createModel<T>(params: CreateModelInput): Promise<T>;
    createModelVersion<T>(params: CreateModelVersionInput): Promise<T>;
    createRule<T>(params: CreateRuleInput): Promise<T>;
    createVariable<T>(params: CreateVariableInput): Promise<T>;
    deleteBatchImportJob<T>(params: DeleteBatchImportJobInput): Promise<T>;
    deleteBatchPredictionJob<T>(params: DeleteBatchPredictionJobInput): Promise<T>;
    deleteDetector<T>(params: DeleteDetectorInput): Promise<T>;
    deleteDetectorVersion<T>(params: DeleteDetectorVersionInput): Promise<T>;
    deleteEntityType<T>(params: DeleteEntityTypeInput): Promise<T>;
    deleteEvent<T>(params: DeleteEventInput): Promise<T>;
    deleteEventsByEventType<T>(params: DeleteEventsByEventTypeInput): Promise<T>;
    deleteEventType<T>(params: DeleteEventTypeInput): Promise<T>;
    deleteExternalModel<T>(params: DeleteExternalModelInput): Promise<T>;
    deleteLabel<T>(params: DeleteLabelInput): Promise<T>;
    deleteList<T>(params: DeleteListInput): Promise<T>;
    deleteModel<T>(params: DeleteModelInput): Promise<T>;
    deleteModelVersion<T>(params: DeleteModelVersionInput): Promise<T>;
    deleteOutcome<T>(params: DeleteOutcomeInput): Promise<T>;
    deleteRule<T>(params: DeleteRuleInput): Promise<T>;
    deleteVariable<T>(params: DeleteVariableInput): Promise<T>;
    describeDetector<T>(params: DescribeDetectorInput): Promise<T>;
    describeModelVersions<T>(params: DescribeModelVersionsInput): Promise<T>;
    getBatchImportJobs<T>(params: GetBatchImportJobsInput): Promise<T>;
    getBatchPredictionJobs<T>(params: GetBatchPredictionJobsInput): Promise<T>;
    getDeleteEventsByEventTypeStatus<T>(params: GetDeleteEventsByEventTypeStatusInput): Promise<T>;
    getDetectors<T>(params: GetDetectorsInput): Promise<T>;
    getDetectorVersion<T>(params: GetDetectorVersionInput): Promise<T>;
    getEntityTypes<T>(params: GetEntityTypesInput): Promise<T>;
    getEvent<T>(params: GetEventInput): Promise<T>;
    getEventPrediction<T>(params: GetEventPredictionInput): Promise<T>;
    getEventPredictionMetadata<T>(params: GetEventPredictionMetadataInput): Promise<T>;
    getEventTypes<T>(params: GetEventTypesInput): Promise<T>;
    getExternalModels<T>(params: GetExternalModelsInput): Promise<T>;
    getKMSEncryptionKey<T>(): Promise<T>;
    getLabels<T>(params: GetLabelsInput): Promise<T>;
    getListElements<T>(params: GetListElementsInput): Promise<T>;
    getListsMetadata<T>(params: GetListsMetadataInput): Promise<T>;
    getModels<T>(params: GetModelsInput): Promise<T>;
    getModelVersion<T>(params: GetModelVersionInput): Promise<T>;
    getOutcomes<T>(params: GetOutcomesInput): Promise<T>;
    getRules<T>(params: GetRulesInput): Promise<T>;
    getVariables<T>(params: GetVariablesInput): Promise<T>;
    listEventPredictions<T>(params: ListEventPredictionsInput): Promise<T>;
    listTagsForResource<T>(params: ListTagsForResourceInput): Promise<T>;
    putDetector<T>(params: PutDetectorInput): Promise<T>;
    putEntityType<T>(params: PutEntityTypeInput): Promise<T>;
    putEventType<T>(params: PutEventTypeInput): Promise<T>;
    putExternalModel<T>(params: PutExternalModelInput): Promise<T>;
    putKMSEncryptionKey<T>(params: PutKMSEncryptionKeyInput): Promise<T>;
    putLabel<T>(params: PutLabelInput): Promise<T>;
    putOutcome<T>(params: PutOutcomeInput): Promise<T>;
    sendEvent<T>(params: SendEventInput): Promise<T>;
    tagResource<T>(params: TagResourceInput): Promise<T>;
    untagResource<T>(params: UntagResourceInput): Promise<T>;
    updateDetectorVersion<T>(params: UpdateDetectorVersionInput): Promise<T>;
    updateDetectorVersionMetadata<T>(params: UpdateDetectorVersionMetadataInput): Promise<T>;
    updateDetectorVersionStatus<T>(params: UpdateDetectorVersionStatusInput): Promise<T>;
    updateEventLabel<T>(params: UpdateEventLabelInput): Promise<T>;
    updateList<T>(params: UpdateListInput): Promise<T>;
    updateModel<T>(params: UpdateModelInput): Promise<T>;
    updateModelVersion<T>(params: UpdateModelVersionInput): Promise<T>;
    updateModelVersionStatus<T>(params: UpdateModelVersionStatusInput): Promise<T>;
    updateRuleMetadata<T>(params: UpdateRuleMetadataInput): Promise<T>;
    updateRuleVersion<T>(params: UpdateRuleVersionInput): Promise<T>;
    updateVariable<T>(params: UpdateVariableInput): Promise<T>;
}
//# sourceMappingURL=FraudDetector.d.ts.map