import { ResourceBase , ResourceTag } from '../resource' ; import { Value , List } from '../dataTypes' ; export class DecimalParameter { Values ! : List < Value < number > > ; Name ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ResourcePermission { Actions ! : List < Value < string > > ; Principal ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class AnalysisSourceTemplate { DataSetReferences ! : List < DataSetReference > ; Arn ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class Sheet { SheetId ? : Value < string > ; Name ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class AnalysisSourceEntity { SourceTemplate ? : AnalysisSourceTemplate ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class DataSetReference { DataSetArn ! : Value < string > ; DataSetPlaceholder ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class DateTimeParameter { Values ! : List < Value < string > > ; Name ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class IntegerParameter { Values ! : List < Value < number > > ; Name ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class Parameters { StringParameters ? : List < StringParameter > ; DecimalParameters ? : List < DecimalParameter > ; IntegerParameters ? : List < IntegerParameter > ; DateTimeParameters ? : List < DateTimeParameter > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class StringParameter { Values ! : List < Value < string > > ; Name ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class AnalysisError { Type ? : Value < string > ; Message ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface AnalysisProperties { AnalysisId : Value < string > ; AwsAccountId : Value < string > ; Errors ? : List < AnalysisError > ; Name ? : Value < string > ; Parameters ? : Parameters ; Permissions ? : List < ResourcePermission > ; SourceEntity ? : AnalysisSourceEntity ; Tags ? : List < ResourceTag > ; ThemeArn ? : Value < string > ; } export default class Analysis extends ResourceBase < AnalysisProperties > { static DecimalParameter = DecimalParameter ; static ResourcePermission = ResourcePermission ; static AnalysisSourceTemplate = AnalysisSourceTemplate ; static Sheet = Sheet ; static AnalysisSourceEntity = AnalysisSourceEntity ; static DataSetReference = DataSetReference ; static DateTimeParameter = DateTimeParameter ; static IntegerParameter = IntegerParameter ; static Parameters = Parameters ; static StringParameter = StringParameter ; static AnalysisError = AnalysisError ; constructor ( properties ) { super ( 'AWS::QuickSight::Analysis' , properties ) ; } }