import { ResourceBase , ResourceTag } from '../resource' ; import { Value , List } from '../dataTypes' ; export class S3MachineLearningModelResourceData { OwnerSetting ? : ResourceDownloadOwnerSetting ; DestinationPath ! : Value < string > ; S3Uri ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class SecretsManagerSecretResourceData { ARN ! : Value < string > ; AdditionalStagingLabelsToDownload ? : List < Value < string > > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ResourceDownloadOwnerSetting { GroupOwner ! : Value < string > ; GroupPermission ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class SageMakerMachineLearningModelResourceData { OwnerSetting ? : ResourceDownloadOwnerSetting ; DestinationPath ! : Value < string > ; SageMakerJobArn ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class GroupOwnerSetting { AutoAddGroupOwner ! : Value < boolean > ; GroupOwner ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class LocalDeviceResourceData { SourcePath ! : Value < string > ; GroupOwnerSetting ? : GroupOwnerSetting ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ResourceDefinitionVersion { Resources ! : List < ResourceInstance > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class LocalVolumeResourceData { SourcePath ! : Value < string > ; DestinationPath ! : Value < string > ; GroupOwnerSetting ? : GroupOwnerSetting ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ResourceInstance { ResourceDataContainer ! : ResourceDataContainer ; Id ! : Value < string > ; Name ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ResourceDataContainer { SecretsManagerSecretResourceData ? : SecretsManagerSecretResourceData ; SageMakerMachineLearningModelResourceData ? : SageMakerMachineLearningModelResourceData ; LocalVolumeResourceData ? : LocalVolumeResourceData ; LocalDeviceResourceData ? : LocalDeviceResourceData ; S3MachineLearningModelResourceData ? : S3MachineLearningModelResourceData ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface ResourceDefinitionProperties { InitialVersion ? : ResourceDefinitionVersion ; Tags ? : { [ key ] : any ; } ; Name : Value < string > ; } export default class ResourceDefinition extends ResourceBase < ResourceDefinitionProperties > { static S3MachineLearningModelResourceData = S3MachineLearningModelResourceData ; static SecretsManagerSecretResourceData = SecretsManagerSecretResourceData ; static ResourceDownloadOwnerSetting = ResourceDownloadOwnerSetting ; static SageMakerMachineLearningModelResourceData = SageMakerMachineLearningModelResourceData ; static GroupOwnerSetting = GroupOwnerSetting ; static LocalDeviceResourceData = LocalDeviceResourceData ; static ResourceDefinitionVersion = ResourceDefinitionVersion ; static LocalVolumeResourceData = LocalVolumeResourceData ; static ResourceInstance = ResourceInstance ; static ResourceDataContainer = ResourceDataContainer ; constructor ( properties ) { super ( 'AWS::Greengrass::ResourceDefinition' , properties ) ; } }