UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

384 lines (383 loc) 15.5 kB
import * as cdk from "../../core/lib"; import * as constructs from "constructs"; import * as cfn_parse from "../../core/lib/helpers-internal"; import { ISignalingChannelRef, IStreamRef, SignalingChannelReference, StreamReference } from "../../interfaces/generated/aws-kinesisvideo-interfaces.generated"; /** * Specifies a signaling channel. * * `CreateSignalingChannel` is an asynchronous operation. * * @cloudformationResource AWS::KinesisVideo::SignalingChannel * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html */ export declare class CfnSignalingChannel extends cdk.CfnResource implements cdk.IInspectable, ISignalingChannelRef, cdk.ITaggable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnSignalingChannel from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnSignalingChannel; /** * Checks whether the given object is a CfnSignalingChannel */ static isCfnSignalingChannel(x: any): x is CfnSignalingChannel; static arnForSignalingChannel(resource: ISignalingChannelRef): string; /** * The period of time (in seconds) a signaling channel retains undelivered messages before they are discarded. */ private _messageTtlSeconds?; /** * A name for the signaling channel that you are creating. */ private _name?; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * An array of key-value pairs to apply to this resource. */ private _tagsRaw?; /** * A type of the signaling channel that you are creating. */ private _type?; protected readonly cfnPropertyNames: Record<string, string>; /** * Create a new `AWS::KinesisVideo::SignalingChannel`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props?: CfnSignalingChannelProps); get signalingChannelRef(): SignalingChannelReference; /** * The period of time (in seconds) a signaling channel retains undelivered messages before they are discarded. */ get messageTtlSeconds(): number | undefined; /** * The period of time (in seconds) a signaling channel retains undelivered messages before they are discarded. */ set messageTtlSeconds(value: number | undefined); /** * A name for the signaling channel that you are creating. */ get name(): string | undefined; /** * A name for the signaling channel that you are creating. */ set name(value: string | undefined); /** * An array of key-value pairs to apply to this resource. */ get tagsRaw(): Array<cdk.CfnTag> | undefined; /** * An array of key-value pairs to apply to this resource. */ set tagsRaw(value: Array<cdk.CfnTag> | undefined); /** * A type of the signaling channel that you are creating. */ get type(): string | undefined; /** * A type of the signaling channel that you are creating. */ set type(value: string | undefined); /** * The Amazon Resource Name (ARN) of the signaling channel. * * @cloudformationAttribute Arn */ get attrArn(): string; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } /** * Properties for defining a `CfnSignalingChannel` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html */ export interface CfnSignalingChannelProps { /** * The period of time (in seconds) a signaling channel retains undelivered messages before they are discarded. * * Use `API_UpdateSignalingChannel` to update this value. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html#cfn-kinesisvideo-signalingchannel-messagettlseconds */ readonly messageTtlSeconds?: number; /** * A name for the signaling channel that you are creating. * * It must be unique for each AWS account and AWS Region . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html#cfn-kinesisvideo-signalingchannel-name */ readonly name?: string; /** * An array of key-value pairs to apply to this resource. * * For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html#cfn-kinesisvideo-signalingchannel-tags */ readonly tags?: Array<cdk.CfnTag>; /** * A type of the signaling channel that you are creating. * * Currently, `SINGLE_MASTER` is the only supported channel type. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html#cfn-kinesisvideo-signalingchannel-type */ readonly type?: string; } /** * Specifies a new Kinesis video stream. * * When you create a new stream, Kinesis Video Streams assigns it a version number. When you change the stream's metadata, Kinesis Video Streams updates the version. * * `CreateStream` is an asynchronous operation. * * For information about how the service works, see [How it Works](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/how-it-works.html) . * * You must have permissions for the `KinesisVideo:CreateStream` action. * * @cloudformationResource AWS::KinesisVideo::Stream * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html */ export declare class CfnStream extends cdk.CfnResource implements cdk.IInspectable, IStreamRef, cdk.ITaggable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnStream from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnStream; /** * Checks whether the given object is a CfnStream */ static isCfnStream(x: any): x is CfnStream; static arnForStream(resource: IStreamRef): string; /** * How long the stream retains data, in hours. */ private _dataRetentionInHours?; /** * The name of the device that is associated with the stream. */ private _deviceName?; /** * The ID of the AWS Key Management Service ( AWS ) key that Kinesis Video Streams uses to encrypt data on the stream. */ private _kmsKeyId?; /** * The `MediaType` of the stream. */ private _mediaType?; /** * The name of the stream. */ private _name?; /** * The configuration for stream storage, including the default storage tier for stream data. */ private _streamStorageConfiguration?; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * An array of key-value pairs to apply to this resource. */ private _tagsRaw?; protected readonly cfnPropertyNames: Record<string, string>; /** * Create a new `AWS::KinesisVideo::Stream`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props?: CfnStreamProps); get streamRef(): StreamReference; /** * How long the stream retains data, in hours. */ get dataRetentionInHours(): number | undefined; /** * How long the stream retains data, in hours. */ set dataRetentionInHours(value: number | undefined); /** * The name of the device that is associated with the stream. */ get deviceName(): string | undefined; /** * The name of the device that is associated with the stream. */ set deviceName(value: string | undefined); /** * The ID of the AWS Key Management Service ( AWS ) key that Kinesis Video Streams uses to encrypt data on the stream. */ get kmsKeyId(): string | undefined; /** * The ID of the AWS Key Management Service ( AWS ) key that Kinesis Video Streams uses to encrypt data on the stream. */ set kmsKeyId(value: string | undefined); /** * The `MediaType` of the stream. */ get mediaType(): string | undefined; /** * The `MediaType` of the stream. */ set mediaType(value: string | undefined); /** * The name of the stream. */ get name(): string | undefined; /** * The name of the stream. */ set name(value: string | undefined); /** * The configuration for stream storage, including the default storage tier for stream data. */ get streamStorageConfiguration(): cdk.IResolvable | CfnStream.StreamStorageConfigurationProperty | undefined; /** * The configuration for stream storage, including the default storage tier for stream data. */ set streamStorageConfiguration(value: cdk.IResolvable | CfnStream.StreamStorageConfigurationProperty | undefined); /** * An array of key-value pairs to apply to this resource. */ get tagsRaw(): Array<cdk.CfnTag> | undefined; /** * An array of key-value pairs to apply to this resource. */ set tagsRaw(value: Array<cdk.CfnTag> | undefined); /** * The Amazon Resource Name (ARN) of the stream. * * @cloudformationAttribute Arn */ get attrArn(): string; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnStream { /** * The configuration for stream storage, including the default storage tier for stream data. * * This configuration determines how stream data is stored and accessed, with different tiers offering varying levels of performance and cost optimization. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisvideo-stream-streamstorageconfiguration.html */ interface StreamStorageConfigurationProperty { /** * The default storage tier for the stream data. * * This setting determines the storage class used for stream data, affecting both performance characteristics and storage costs. * * Available storage tiers: * * - `HOT` - Optimized for frequent access with the lowest latency and highest performance. Ideal for real-time applications and frequently accessed data. * - `WARM` - Balanced performance and cost for moderately accessed data. Suitable for data that is accessed regularly but not continuously. * * @default - "HOT" * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisvideo-stream-streamstorageconfiguration.html#cfn-kinesisvideo-stream-streamstorageconfiguration-defaultstoragetier */ readonly defaultStorageTier?: string; } } /** * Properties for defining a `CfnStream` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html */ export interface CfnStreamProps { /** * How long the stream retains data, in hours. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html#cfn-kinesisvideo-stream-dataretentioninhours */ readonly dataRetentionInHours?: number; /** * The name of the device that is associated with the stream. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html#cfn-kinesisvideo-stream-devicename */ readonly deviceName?: string; /** * The ID of the AWS Key Management Service ( AWS ) key that Kinesis Video Streams uses to encrypt data on the stream. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html#cfn-kinesisvideo-stream-kmskeyid */ readonly kmsKeyId?: string; /** * The `MediaType` of the stream. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html#cfn-kinesisvideo-stream-mediatype */ readonly mediaType?: string; /** * The name of the stream. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html#cfn-kinesisvideo-stream-name */ readonly name?: string; /** * The configuration for stream storage, including the default storage tier for stream data. * * This configuration determines how stream data is stored and accessed, with different tiers offering varying levels of performance and cost optimization. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html#cfn-kinesisvideo-stream-streamstorageconfiguration */ readonly streamStorageConfiguration?: cdk.IResolvable | CfnStream.StreamStorageConfigurationProperty; /** * An array of key-value pairs to apply to this resource. * * For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html#cfn-kinesisvideo-stream-tags */ readonly tags?: Array<cdk.CfnTag>; } export type { ISignalingChannelRef, SignalingChannelReference }; export type { IStreamRef, StreamReference };