import { ResourceBase , ResourceTag } from '../resource' ; import { Value , List } from '../dataTypes' ; export class DataSourceParameters { AuroraPostgreSqlParameters ? : AuroraPostgreSqlParameters ; TeradataParameters ? : TeradataParameters ; RdsParameters ? : RdsParameters ; AthenaParameters ? : AthenaParameters ; SparkParameters ? : SparkParameters ; MariaDbParameters ? : MariaDbParameters ; OracleParameters ? : OracleParameters ; PrestoParameters ? : PrestoParameters ; RedshiftParameters ? : RedshiftParameters ; MySqlParameters ? : MySqlParameters ; SqlServerParameters ? : SqlServerParameters ; SnowflakeParameters ? : SnowflakeParameters ; AmazonElasticsearchParameters ? : AmazonElasticsearchParameters ; PostgreSqlParameters ? : PostgreSqlParameters ; AuroraParameters ? : AuroraParameters ; S3Parameters ? : S3Parameters ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class AuroraPostgreSqlParameters { Port ! : Value < number > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class DataSourceCredentials { CopySourceArn ? : Value < string > ; CredentialPair ? : CredentialPair ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class CredentialPair { AlternateDataSourceParameters ? : List < DataSourceParameters > ; Username ! : Value < string > ; Password ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class SnowflakeParameters { Warehouse ! : Value < string > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class SslProperties { DisableSsl ? : Value < boolean > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class S3Parameters { ManifestFileLocation ! : ManifestFileLocation ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class PrestoParameters { Port ! : Value < number > ; Host ! : Value < string > ; Catalog ! : 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 SparkParameters { Port ! : Value < number > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class AuroraParameters { Port ! : Value < number > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class MariaDbParameters { Port ! : Value < number > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class TeradataParameters { Port ! : Value < number > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class AthenaParameters { WorkGroup ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class ManifestFileLocation { Bucket ! : Value < string > ; Key ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class MySqlParameters { Port ! : Value < number > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class OracleParameters { Port ! : Value < number > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class AmazonElasticsearchParameters { Domain ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class DataSourceErrorInfo { Type ? : Value < string > ; Message ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class VpcConnectionProperties { VpcConnectionArn ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class RedshiftParameters { ClusterId ? : Value < string > ; Port ? : Value < number > ; Database ! : Value < string > ; Host ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class PostgreSqlParameters { Port ! : Value < number > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class RdsParameters { InstanceId ! : Value < string > ; Database ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class SqlServerParameters { Port ! : Value < number > ; Database ! : Value < string > ; Host ! : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface DataSourceProperties { AlternateDataSourceParameters ? : List < DataSourceParameters > ; AwsAccountId ? : Value < string > ; Credentials ? : DataSourceCredentials ; DataSourceId ? : Value < string > ; DataSourceParameters ? : DataSourceParameters ; ErrorInfo ? : DataSourceErrorInfo ; Name ? : Value < string > ; Permissions ? : List < ResourcePermission > ; SslProperties ? : SslProperties ; Tags ? : List < ResourceTag > ; Type ? : Value < string > ; VpcConnectionProperties ? : VpcConnectionProperties ; } export default class DataSource extends ResourceBase < DataSourceProperties > { static DataSourceParameters = DataSourceParameters ; static AuroraPostgreSqlParameters = AuroraPostgreSqlParameters ; static DataSourceCredentials = DataSourceCredentials ; static CredentialPair = CredentialPair ; static SnowflakeParameters = SnowflakeParameters ; static SslProperties = SslProperties ; static S3Parameters = S3Parameters ; static PrestoParameters = PrestoParameters ; static ResourcePermission = ResourcePermission ; static SparkParameters = SparkParameters ; static AuroraParameters = AuroraParameters ; static MariaDbParameters = MariaDbParameters ; static TeradataParameters = TeradataParameters ; static AthenaParameters = AthenaParameters ; static ManifestFileLocation = ManifestFileLocation ; static MySqlParameters = MySqlParameters ; static OracleParameters = OracleParameters ; static AmazonElasticsearchParameters = AmazonElasticsearchParameters ; static DataSourceErrorInfo = DataSourceErrorInfo ; static VpcConnectionProperties = VpcConnectionProperties ; static RedshiftParameters = RedshiftParameters ; static PostgreSqlParameters = PostgreSqlParameters ; static RdsParameters = RdsParameters ; static SqlServerParameters = SqlServerParameters ; constructor ( properties ? ) { super ( 'AWS::QuickSight::DataSource' , properties || { } ) ; } }