440 lines
19 KiB
TypeScript
440 lines
19 KiB
TypeScript
import * as cdk from "../../core/lib";
|
|
import * as constructs from "constructs";
|
|
import * as cfn_parse from "../../core/lib/helpers-internal";
|
|
import { ILoggingConfigurationRef, IRoomRef, LoggingConfigurationReference, RoomReference } from "../../interfaces/generated/aws-ivschat-interfaces.generated";
|
|
import { aws_ivschat as ivsChatRefs } from "../../interfaces";
|
|
/**
|
|
* The `AWS::IVSChat::LoggingConfiguration` resource specifies an logging configuration that allows clients to store and record sent messages.
|
|
*
|
|
* For more information, see [CreateLoggingConfiguration](https://docs.aws.amazon.com/ivs/latest/ChatAPIReference/API_CreateLoggingConfiguration.html) in the *Amazon Interactive Video Service Chat API Reference* .
|
|
*
|
|
* @cloudformationResource AWS::IVSChat::LoggingConfiguration
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html
|
|
*/
|
|
export declare class CfnLoggingConfiguration extends cdk.CfnResource implements cdk.IInspectable, ILoggingConfigurationRef, cdk.ITaggable {
|
|
/**
|
|
* The CloudFormation resource type name for this resource class.
|
|
*/
|
|
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
|
/**
|
|
* Build a CfnLoggingConfiguration 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): CfnLoggingConfiguration;
|
|
/**
|
|
* Checks whether the given object is a CfnLoggingConfiguration
|
|
*/
|
|
static isCfnLoggingConfiguration(x: any): x is CfnLoggingConfiguration;
|
|
static arnForLoggingConfiguration(resource: ILoggingConfigurationRef): string;
|
|
/**
|
|
* The DestinationConfiguration is a complex type that contains information about where chat content will be logged.
|
|
*/
|
|
private _destinationConfiguration;
|
|
/**
|
|
* Logging-configuration name.
|
|
*/
|
|
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?;
|
|
protected readonly cfnPropertyNames: Record<string, string>;
|
|
/**
|
|
* Create a new `AWS::IVSChat::LoggingConfiguration`.
|
|
*
|
|
* @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: CfnLoggingConfigurationProps);
|
|
get loggingConfigurationRef(): LoggingConfigurationReference;
|
|
/**
|
|
* The DestinationConfiguration is a complex type that contains information about where chat content will be logged.
|
|
*/
|
|
get destinationConfiguration(): CfnLoggingConfiguration.DestinationConfigurationProperty | cdk.IResolvable;
|
|
/**
|
|
* The DestinationConfiguration is a complex type that contains information about where chat content will be logged.
|
|
*/
|
|
set destinationConfiguration(value: CfnLoggingConfiguration.DestinationConfigurationProperty | cdk.IResolvable);
|
|
/**
|
|
* Logging-configuration name.
|
|
*/
|
|
get name(): string | undefined;
|
|
/**
|
|
* Logging-configuration name.
|
|
*/
|
|
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);
|
|
/**
|
|
* The logging-configuration ARN. For example: `arn:aws:ivschat:us-west-2:123456789012:logging-configuration/abcdABCDefgh`
|
|
*
|
|
* @cloudformationAttribute Arn
|
|
*/
|
|
get attrArn(): string;
|
|
/**
|
|
* The logging-configuration ID. For example: `abcdABCDefgh`
|
|
*
|
|
* @cloudformationAttribute Id
|
|
*/
|
|
get attrId(): string;
|
|
/**
|
|
* Indicates the current state of the logging configuration. When the state is `ACTIVE` , the configuration is ready to log a chat session. Valid values: `CREATING` | `CREATE_FAILED` | `DELETING` | `DELETE_FAILED` | `UPDATING` | `UPDATE_FAILED` | `ACTIVE` .
|
|
*
|
|
* @cloudformationAttribute State
|
|
*/
|
|
get attrState(): 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 CfnLoggingConfiguration {
|
|
/**
|
|
* The DestinationConfiguration property type describes a location where chat logs will be stored.
|
|
*
|
|
* Each member represents the configuration of one log destination. For logging, you define only one type of destination.
|
|
*
|
|
* @struct
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-destinationconfiguration.html
|
|
*/
|
|
interface DestinationConfigurationProperty {
|
|
/**
|
|
* An Amazon CloudWatch Logs destination configuration where chat activity will be logged.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-destinationconfiguration.html#cfn-ivschat-loggingconfiguration-destinationconfiguration-cloudwatchlogs
|
|
*/
|
|
readonly cloudWatchLogs?: CfnLoggingConfiguration.CloudWatchLogsDestinationConfigurationProperty | cdk.IResolvable;
|
|
/**
|
|
* An Amazon Kinesis Data Firehose destination configuration where chat activity will be logged.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-destinationconfiguration.html#cfn-ivschat-loggingconfiguration-destinationconfiguration-firehose
|
|
*/
|
|
readonly firehose?: CfnLoggingConfiguration.FirehoseDestinationConfigurationProperty | cdk.IResolvable;
|
|
/**
|
|
* An Amazon S3 destination configuration where chat activity will be logged.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-destinationconfiguration.html#cfn-ivschat-loggingconfiguration-destinationconfiguration-s3
|
|
*/
|
|
readonly s3?: cdk.IResolvable | CfnLoggingConfiguration.S3DestinationConfigurationProperty;
|
|
}
|
|
/**
|
|
* The S3DestinationConfiguration property type specifies an S3 location where chat logs will be stored.
|
|
*
|
|
* @struct
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-s3destinationconfiguration.html
|
|
*/
|
|
interface S3DestinationConfigurationProperty {
|
|
/**
|
|
* Name of the Amazon S3 bucket where chat activity will be logged.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-s3destinationconfiguration.html#cfn-ivschat-loggingconfiguration-s3destinationconfiguration-bucketname
|
|
*/
|
|
readonly bucketName: string;
|
|
}
|
|
/**
|
|
* The FirehoseDestinationConfiguration property type specifies a Kinesis Firehose location where chat logs will be stored.
|
|
*
|
|
* @struct
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-firehosedestinationconfiguration.html
|
|
*/
|
|
interface FirehoseDestinationConfigurationProperty {
|
|
/**
|
|
* Name of the Amazon Kinesis Firehose delivery stream where chat activity will be logged.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-firehosedestinationconfiguration.html#cfn-ivschat-loggingconfiguration-firehosedestinationconfiguration-deliverystreamname
|
|
*/
|
|
readonly deliveryStreamName: string;
|
|
}
|
|
/**
|
|
* The CloudWatchLogsDestinationConfiguration property type specifies a CloudWatch Logs location where chat logs will be stored.
|
|
*
|
|
* @struct
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-cloudwatchlogsdestinationconfiguration.html
|
|
*/
|
|
interface CloudWatchLogsDestinationConfigurationProperty {
|
|
/**
|
|
* Name of the Amazon Cloudwatch Logs destination where chat activity will be logged.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-loggingconfiguration-cloudwatchlogsdestinationconfiguration.html#cfn-ivschat-loggingconfiguration-cloudwatchlogsdestinationconfiguration-loggroupname
|
|
*/
|
|
readonly logGroupName: string;
|
|
}
|
|
}
|
|
/**
|
|
* Properties for defining a `CfnLoggingConfiguration`
|
|
*
|
|
* @struct
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html
|
|
*/
|
|
export interface CfnLoggingConfigurationProps {
|
|
/**
|
|
* The DestinationConfiguration is a complex type that contains information about where chat content will be logged.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html#cfn-ivschat-loggingconfiguration-destinationconfiguration
|
|
*/
|
|
readonly destinationConfiguration: CfnLoggingConfiguration.DestinationConfigurationProperty | cdk.IResolvable;
|
|
/**
|
|
* Logging-configuration name.
|
|
*
|
|
* The value does not need to be unique.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html#cfn-ivschat-loggingconfiguration-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-ivschat-loggingconfiguration-tag.html) .
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html#cfn-ivschat-loggingconfiguration-tags
|
|
*/
|
|
readonly tags?: Array<cdk.CfnTag>;
|
|
}
|
|
/**
|
|
* The `AWS::IVSChat::Room` resource specifies an room that allows clients to connect and pass messages.
|
|
*
|
|
* For more information, see [CreateRoom](https://docs.aws.amazon.com/ivs/latest/ChatAPIReference/API_CreateRoom.html) in the *Amazon Interactive Video Service Chat API Reference* .
|
|
*
|
|
* @cloudformationResource AWS::IVSChat::Room
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html
|
|
*/
|
|
export declare class CfnRoom extends cdk.CfnResource implements cdk.IInspectable, IRoomRef, cdk.ITaggable {
|
|
/**
|
|
* The CloudFormation resource type name for this resource class.
|
|
*/
|
|
static readonly CFN_RESOURCE_TYPE_NAME: string;
|
|
/**
|
|
* Build a CfnRoom 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): CfnRoom;
|
|
/**
|
|
* Checks whether the given object is a CfnRoom
|
|
*/
|
|
static isCfnRoom(x: any): x is CfnRoom;
|
|
static arnForRoom(resource: IRoomRef): string;
|
|
/**
|
|
* List of logging-configuration identifiers attached to the room.
|
|
*/
|
|
private _loggingConfigurationIdentifiers?;
|
|
/**
|
|
* Maximum number of characters in a single message.
|
|
*/
|
|
private _maximumMessageLength?;
|
|
/**
|
|
* Maximum number of messages per second that can be sent to the room (by all clients).
|
|
*/
|
|
private _maximumMessageRatePerSecond?;
|
|
/**
|
|
* Configuration information for optional review of messages.
|
|
*/
|
|
private _messageReviewHandler?;
|
|
/**
|
|
* Room name.
|
|
*/
|
|
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?;
|
|
protected readonly cfnPropertyNames: Record<string, string>;
|
|
/**
|
|
* Create a new `AWS::IVSChat::Room`.
|
|
*
|
|
* @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?: CfnRoomProps);
|
|
get roomRef(): RoomReference;
|
|
/**
|
|
* List of logging-configuration identifiers attached to the room.
|
|
*/
|
|
get loggingConfigurationIdentifiers(): Array<string> | undefined;
|
|
/**
|
|
* List of logging-configuration identifiers attached to the room.
|
|
*/
|
|
set loggingConfigurationIdentifiers(value: Array<string> | undefined);
|
|
/**
|
|
* Maximum number of characters in a single message.
|
|
*/
|
|
get maximumMessageLength(): number | undefined;
|
|
/**
|
|
* Maximum number of characters in a single message.
|
|
*/
|
|
set maximumMessageLength(value: number | undefined);
|
|
/**
|
|
* Maximum number of messages per second that can be sent to the room (by all clients).
|
|
*/
|
|
get maximumMessageRatePerSecond(): number | undefined;
|
|
/**
|
|
* Maximum number of messages per second that can be sent to the room (by all clients).
|
|
*/
|
|
set maximumMessageRatePerSecond(value: number | undefined);
|
|
/**
|
|
* Configuration information for optional review of messages.
|
|
*/
|
|
get messageReviewHandler(): cdk.IResolvable | CfnRoom.MessageReviewHandlerProperty | undefined;
|
|
/**
|
|
* Configuration information for optional review of messages.
|
|
*/
|
|
set messageReviewHandler(value: cdk.IResolvable | CfnRoom.MessageReviewHandlerProperty | undefined);
|
|
/**
|
|
* Room name.
|
|
*/
|
|
get name(): string | undefined;
|
|
/**
|
|
* Room name.
|
|
*/
|
|
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);
|
|
/**
|
|
* The room ARN. For example: `arn:aws:ivschat:us-west-2:123456789012:room/abcdABCDefgh`
|
|
*
|
|
* @cloudformationAttribute Arn
|
|
*/
|
|
get attrArn(): string;
|
|
/**
|
|
* The room ID. For example: `abcdABCDefgh`
|
|
*
|
|
* @cloudformationAttribute Id
|
|
*/
|
|
get attrId(): 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 CfnRoom {
|
|
/**
|
|
* The MessageReviewHandler property type specifies configuration information for optional message review.
|
|
*
|
|
* @struct
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-room-messagereviewhandler.html
|
|
*/
|
|
interface MessageReviewHandlerProperty {
|
|
/**
|
|
* Specifies the fallback behavior (whether the message is allowed or denied) if the handler does not return a valid response, encounters an error, or times out.
|
|
*
|
|
* (For the timeout period, see [Service Quotas](https://docs.aws.amazon.com/ivs/latest/userguide/service-quotas.html) .) If allowed, the message is delivered with returned content to all users connected to the room. If denied, the message is not delivered to any user.
|
|
*
|
|
* *Default* : `ALLOW`
|
|
*
|
|
* @default - "ALLOW"
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-room-messagereviewhandler.html#cfn-ivschat-room-messagereviewhandler-fallbackresult
|
|
*/
|
|
readonly fallbackResult?: string;
|
|
/**
|
|
* Identifier of the message review handler.
|
|
*
|
|
* Currently this must be an ARN of a lambda function.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivschat-room-messagereviewhandler.html#cfn-ivschat-room-messagereviewhandler-uri
|
|
*/
|
|
readonly uri?: string;
|
|
}
|
|
}
|
|
/**
|
|
* Properties for defining a `CfnRoom`
|
|
*
|
|
* @struct
|
|
* @stability external
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html
|
|
*/
|
|
export interface CfnRoomProps {
|
|
/**
|
|
* List of logging-configuration identifiers attached to the room.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html#cfn-ivschat-room-loggingconfigurationidentifiers
|
|
*/
|
|
readonly loggingConfigurationIdentifiers?: Array<ivsChatRefs.ILoggingConfigurationRef | string>;
|
|
/**
|
|
* Maximum number of characters in a single message.
|
|
*
|
|
* Messages are expected to be UTF-8 encoded and this limit applies specifically to rune/code-point count, not number of bytes.
|
|
*
|
|
* @default - 500
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html#cfn-ivschat-room-maximummessagelength
|
|
*/
|
|
readonly maximumMessageLength?: number;
|
|
/**
|
|
* Maximum number of messages per second that can be sent to the room (by all clients).
|
|
*
|
|
* @default - 10
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html#cfn-ivschat-room-maximummessageratepersecond
|
|
*/
|
|
readonly maximumMessageRatePerSecond?: number;
|
|
/**
|
|
* Configuration information for optional review of messages.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html#cfn-ivschat-room-messagereviewhandler
|
|
*/
|
|
readonly messageReviewHandler?: cdk.IResolvable | CfnRoom.MessageReviewHandlerProperty;
|
|
/**
|
|
* Room name.
|
|
*
|
|
* The value does not need to be unique.
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html#cfn-ivschat-room-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-ivschat-room-tag.html) .
|
|
*
|
|
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html#cfn-ivschat-room-tags
|
|
*/
|
|
readonly tags?: Array<cdk.CfnTag>;
|
|
}
|
|
export type { ILoggingConfigurationRef, LoggingConfigurationReference };
|
|
export type { IRoomRef, RoomReference };
|