/* 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. */ /** * Resource Type definition for AWS::IoTAnalytics::Datastore */ export interface AwsIotanalyticsDatastore { DatastoreStorage?: DatastoreStorage; DatastoreName?: string; DatastorePartitions?: DatastorePartitions; Id?: string; FileFormatConfiguration?: FileFormatConfiguration; RetentionPeriod?: RetentionPeriod; /** * @minItems 1 * @maxItems 50 */ Tags?: [Tag, ...Tag[]]; } export interface DatastoreStorage { ServiceManagedS3?: ServiceManagedS3; CustomerManagedS3?: CustomerManagedS3; IotSiteWiseMultiLayerStorage?: IotSiteWiseMultiLayerStorage; } export interface ServiceManagedS3 {} export interface CustomerManagedS3 { Bucket: string; RoleArn: string; KeyPrefix?: string; } export interface IotSiteWiseMultiLayerStorage { CustomerManagedS3Storage?: CustomerManagedS3Storage; } export interface CustomerManagedS3Storage { Bucket: string; KeyPrefix?: string; } export interface DatastorePartitions { /** * @minItems 0 * @maxItems 25 */ Partitions?: DatastorePartition[]; } export interface DatastorePartition { Partition?: Partition; TimestampPartition?: TimestampPartition; } export interface Partition { AttributeName: string; } export interface TimestampPartition { AttributeName: string; TimestampFormat?: string; } export interface FileFormatConfiguration { JsonConfiguration?: JsonConfiguration; ParquetConfiguration?: ParquetConfiguration; } export interface JsonConfiguration {} export interface ParquetConfiguration { SchemaDefinition?: SchemaDefinition; } export interface SchemaDefinition { /** * @minItems 1 * @maxItems 100 */ Columns?: [Column, ...Column[]]; } export interface Column { Type: string; Name: string; } export interface RetentionPeriod { NumberOfDays?: number; Unlimited?: boolean; } export interface Tag { Key: string; Value: string; }