/* eslint-disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ export type ExcelOptions = { /** * @minItems 1 * @maxItems 1 */ SheetNames?: [string]; /** * @minItems 1 * @maxItems 1 */ SheetIndexes?: [number]; HeaderRow?: boolean; } & ExcelOptions1; export type ExcelOptions1 = { [k: string]: unknown; }; /** * Parameter name */ export type PathParameterName = string; /** * Resource schema for AWS::DataBrew::Dataset. */ export interface AwsDatabrewDataset { /** * Dataset name */ Name: string; /** * Dataset format */ Format?: "CSV" | "JSON" | "PARQUET" | "EXCEL" | "ORC"; FormatOptions?: FormatOptions; Input: Input; PathOptions?: PathOptions; Tags?: Tag[]; } /** * Format options for dataset */ export interface FormatOptions { Json?: JsonOptions; Excel?: ExcelOptions; Csv?: CsvOptions; } /** * Json options */ export interface JsonOptions { MultiLine?: boolean; } /** * Csv options */ export interface CsvOptions { Delimiter?: string; HeaderRow?: boolean; } /** * Input */ export interface Input { S3InputDefinition?: S3Location; DataCatalogInputDefinition?: DataCatalogInputDefinition; DatabaseInputDefinition?: DatabaseInputDefinition; Metadata?: Metadata; } /** * Input location */ export interface S3Location { Bucket: string; Key?: string; } export interface DataCatalogInputDefinition { /** * Catalog id */ CatalogId?: string; /** * Database name */ DatabaseName?: string; /** * Table name */ TableName?: string; TempDirectory?: S3Location; } export interface DatabaseInputDefinition { /** * Glue connection name */ GlueConnectionName: string; /** * Database table name */ DatabaseTableName?: string; TempDirectory?: S3Location; /** * Custom SQL to run against the provided AWS Glue connection. This SQL will be used as the input for DataBrew projects and jobs. */ QueryString?: string; } export interface Metadata { /** * Arn of the source of the dataset. For e.g.: AppFlow Flow ARN. */ SourceArn?: string; } /** * PathOptions */ export interface PathOptions { FilesLimit?: FilesLimit; LastModifiedDateCondition?: FilterExpression; Parameters?: PathParameter[]; } export interface FilesLimit { /** * Maximum number of files */ MaxFiles: number; /** * Ordered by */ OrderedBy?: "LAST_MODIFIED_DATE"; /** * Order */ Order?: "ASCENDING" | "DESCENDING"; } export interface FilterExpression { /** * Filtering expression for a parameter */ Expression: string; ValuesMap: FilterValue[]; } /** * A key-value pair to associate expression variable names with their values */ export interface FilterValue { /** * Variable name */ ValueReference: string; Value: string; } /** * A key-value pair to associate dataset parameter name with its definition. */ export interface PathParameter { PathParameterName: PathParameterName; DatasetParameter: DatasetParameter; } export interface DatasetParameter { Name: PathParameterName; /** * Parameter type */ Type: "String" | "Number" | "Datetime"; DatetimeOptions?: DatetimeOptions; /** * Add the value of this parameter as a column in a dataset. */ CreateColumn?: boolean; Filter?: FilterExpression; } export interface DatetimeOptions { /** * Date/time format of a date parameter */ Format: string; /** * Timezone offset */ TimezoneOffset?: string; /** * Locale code for a date parameter */ LocaleCode?: string; } /** * A key-value pair to associate with a resource. */ export interface Tag { Key: string; Value: string; }