import * as core from "@terrascript/core"; export interface DsServerArgs { /** * (Required) ID for an SFTP server. */ serverId: string | core.StringOut; } export class DsServer extends core.Data { /** * Amazon Resource Name (ARN) of Transfer Server. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * The ARN of any certificate. */ @core.attr(String, { computed: true }) public certificate!: string | core.StringOut; /** * The domain of the storage system that is used for file transfers. */ @core.attr(String, { computed: true }) public domain!: string | core.StringOut; /** * The endpoint of the Transfer Server (e.g., `s-12345678.server.transfer.REGION.amazonaws.com`). */ @core.attr(String, { computed: true }) public endpoint!: string | core.StringOut; /** * The type of endpoint that the server is connected to. */ @core.attr(String, { computed: true }) public endpointType!: string | core.StringOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * The mode of authentication enabled for this service. The default value is `SERVICE_MANAGED`, which a * llows you to store and access SFTP user credentials within the service. `API_GATEWAY` indicates that * user authentication requires a call to an API Gateway endpoint URL provided by you to integrate an * identity provider of your choice. */ @core.attr(String, { computed: true }) public identityProviderType!: string | core.StringOut; /** * Amazon Resource Name (ARN) of the IAM role used to authenticate the user account with an `identity_p * rovider_type` of `API_GATEWAY`. */ @core.attr(String, { computed: true }) public invocationRole!: string | core.StringOut; /** * Amazon Resource Name (ARN) of an IAM role that allows the service to write your SFTP users’ activity * to your Amazon CloudWatch logs for monitoring and auditing purposes. */ @core.attr(String, { computed: true }) public loggingRole!: string | core.StringOut; /** * The file transfer protocol or protocols over which your file transfer protocol client can connect to * your server's endpoint. */ @core.attr(String, { computed: true, kind: "array" }) public protocols!: core.Array | core.ArrayOut; /** * The name of the security policy that is attached to the server. */ @core.attr(String, { computed: true }) public securityPolicyName!: string | core.StringOut; /** * (Required) ID for an SFTP server. */ @core.attr(String) public serverId!: string | core.StringOut; /** * URL of the service endpoint used to authenticate users with an `identity_provider_type` of `API_GATE * WAY`. */ @core.attr(String, { computed: true }) public url!: string | core.StringOut; constructor(name: string, args?: DsServerArgs) { super(name, "aws_transfer_server", args); } public override getNamespace(): string { return "aws_transfer"; } }