import { ResourceBase , ResourceTag } from '../resource' ; import { Value , List } from '../dataTypes' ; export class AccessEndpoint { EndpointType ! : Value < string > ; VpceId ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class UserSetting { Action ! : Value < string > ; Permission ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ApplicationSettings { SettingsGroup ? : Value < string > ; Enabled ! : Value < boolean > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class StorageConnector { Domains ? : List < Value < string > > ; ResourceIdentifier ? : Value < string > ; ConnectorType ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface StackProperties { Description ? : Value < string > ; StorageConnectors ? : List < StorageConnector > ; DeleteStorageConnectors ? : Value < boolean > ; EmbedHostDomains ? : List < Value < string > > ; UserSettings ? : List < UserSetting > ; AttributesToDelete ? : List < Value < string > > ; RedirectURL ? : Value < string > ; Name ? : Value < string > ; FeedbackURL ? : Value < string > ; ApplicationSettings ? : ApplicationSettings ; DisplayName ? : Value < string > ; Tags ? : List < ResourceTag > ; AccessEndpoints ? : List < AccessEndpoint > ; } export default class Stack extends ResourceBase < StackProperties > { static AccessEndpoint = AccessEndpoint ; static UserSetting = UserSetting ; static ApplicationSettings = ApplicationSettings ; static StorageConnector = StorageConnector ; constructor ( properties ? ) { super ( 'AWS::AppStream::Stack' , properties || { } ) ; } }