import * as core from "@terrascript/core"; export interface StreamModeDetailsArgs extends core.SchemaArgs { streamMode: string | core.StringOut; } export declare class StreamModeDetails extends core.Schema { streamMode: string | core.StringOut; } export interface StreamArgs extends core.ResourceArgs { /** * The Amazon Resource Name (ARN) specifying the Stream (same as `id`) */ arn?: string | core.StringOut; /** * (Optional) The encryption type to use. The only acceptable values are `NONE` or `KMS`. The default v * alue is `NONE`. */ encryptionType?: string | core.StringOut; /** * (Optional) A boolean that indicates all registered consumers should be deregistered from the stream * so that the stream can be destroyed without error. The default value is `false`. */ enforceConsumerDeletion?: boolean | core.BooleanOut; /** * (Optional) The GUID for the customer-managed KMS key to use for encryption. You can also use a Kines * is-owned master key by specifying the alias `alias/aws/kinesis`. */ kmsKeyId?: string | core.StringOut; /** * (Required) A name to identify the stream. This is unique to the AWS account and region the Stream is * created in. */ name: string | core.StringOut; /** * (Optional) Length of time data records are accessible after they are added to the stream. The maximu * m value of a stream's retention period is 8760 hours. Minimum value is 24. Default is 24. */ retentionPeriod?: number | core.NumberOut; /** * The count of Shards for this Stream */ shardCount?: number | core.NumberOut; /** * (Optional) A list of shard-level CloudWatch metrics which can be enabled for the stream. See [Monito * ring with CloudWatch][3] for more. Note that the value ALL should not be used; instead you should pr * ovide an explicit list of metrics you wish to enable. */ shardLevelMetrics?: core.Array | core.ArrayOut; /** * (Optional) Indicates the [capacity mode](https://docs.aws.amazon.com/streams/latest/dev/how-do-i-siz * e-a-stream.html) of the data stream. Detailed below. */ streamModeDetails?: StreamModeDetails; /** * (Optional) A map of tags to assign to the resource. If configured with a provider [`default_tags` co * nfiguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-co * nfiguration-block) present, tags with matching keys will overwrite those defined at the provider-lev * el. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; } export declare class Stream extends core.Resource { /** * The Amazon Resource Name (ARN) specifying the Stream (same as `id`) */ arn?: string | core.StringOut; /** * (Optional) The encryption type to use. The only acceptable values are `NONE` or `KMS`. The default v * alue is `NONE`. */ encryptionType?: string | core.StringOut; /** * (Optional) A boolean that indicates all registered consumers should be deregistered from the stream * so that the stream can be destroyed without error. The default value is `false`. */ enforceConsumerDeletion?: boolean | core.BooleanOut; /** * The unique Stream id */ id: string | core.StringOut; /** * (Optional) The GUID for the customer-managed KMS key to use for encryption. You can also use a Kines * is-owned master key by specifying the alias `alias/aws/kinesis`. */ kmsKeyId?: string | core.StringOut; /** * (Required) A name to identify the stream. This is unique to the AWS account and region the Stream is * created in. */ name: string | core.StringOut; /** * (Optional) Length of time data records are accessible after they are added to the stream. The maximu * m value of a stream's retention period is 8760 hours. Minimum value is 24. Default is 24. */ retentionPeriod?: number | core.NumberOut; /** * The count of Shards for this Stream */ shardCount?: number | core.NumberOut; /** * (Optional) A list of shard-level CloudWatch metrics which can be enabled for the stream. See [Monito * ring with CloudWatch][3] for more. Note that the value ALL should not be used; instead you should pr * ovide an explicit list of metrics you wish to enable. */ shardLevelMetrics?: core.Array | core.ArrayOut; /** * (Optional) Indicates the [capacity mode](https://docs.aws.amazon.com/streams/latest/dev/how-do-i-siz * e-a-stream.html) of the data stream. Detailed below. */ streamModeDetails?: StreamModeDetails; /** * (Optional) A map of tags to assign to the resource. If configured with a provider [`default_tags` co * nfiguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-co * nfiguration-block) present, tags with matching keys will overwrite those defined at the provider-lev * el. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; constructor(name: string, args?: StreamArgs); getNamespace(): string; } //# sourceMappingURL=stream.d.ts.map