import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MpsOutputConfig extends cdktf.TerraformMetaArguments { /** * Flow ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#flow_id MpsOutput#flow_id} */ readonly flowId: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#id MpsOutput#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * output block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#output MpsOutput#output} */ readonly output: MpsOutputOutput; } export interface MpsOutputOutputRtmpSettingsDestinations { /** * relayed StreamKey, in the format: stream?key=value. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#stream_key MpsOutput#stream_key} */ readonly streamKey: string; /** * relayed URL, the format is: rtmp://domain/live. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#url MpsOutput#url} */ readonly url: string; } export declare function mpsOutputOutputRtmpSettingsDestinationsToTerraform(struct?: MpsOutputOutputRtmpSettingsDestinations | cdktf.IResolvable): any; export declare function mpsOutputOutputRtmpSettingsDestinationsToHclTerraform(struct?: MpsOutputOutputRtmpSettingsDestinations | cdktf.IResolvable): any; export declare class MpsOutputOutputRtmpSettingsDestinationsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): MpsOutputOutputRtmpSettingsDestinations | cdktf.IResolvable | undefined; set internalValue(value: MpsOutputOutputRtmpSettingsDestinations | cdktf.IResolvable | undefined); private _streamKey?; get streamKey(): string; set streamKey(value: string); get streamKeyInput(): string; private _url?; get url(): string; set url(value: string); get urlInput(): string; } export declare class MpsOutputOutputRtmpSettingsDestinationsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MpsOutputOutputRtmpSettingsDestinations[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): MpsOutputOutputRtmpSettingsDestinationsOutputReference; } export interface MpsOutputOutputRtmpSettings { /** * RTMP Chunk size, range is [4096, 40960]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#chunk_size MpsOutput#chunk_size} */ readonly chunkSize?: number; /** * destinations block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#destinations MpsOutput#destinations} */ readonly destinations: MpsOutputOutputRtmpSettingsDestinations[] | cdktf.IResolvable; } export declare function mpsOutputOutputRtmpSettingsToTerraform(struct?: MpsOutputOutputRtmpSettingsOutputReference | MpsOutputOutputRtmpSettings): any; export declare function mpsOutputOutputRtmpSettingsToHclTerraform(struct?: MpsOutputOutputRtmpSettingsOutputReference | MpsOutputOutputRtmpSettings): any; export declare class MpsOutputOutputRtmpSettingsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): MpsOutputOutputRtmpSettings | undefined; set internalValue(value: MpsOutputOutputRtmpSettings | undefined); private _chunkSize?; get chunkSize(): number; set chunkSize(value: number); resetChunkSize(): void; get chunkSizeInput(): number; private _destinations; get destinations(): MpsOutputOutputRtmpSettingsDestinationsList; putDestinations(value: MpsOutputOutputRtmpSettingsDestinations[] | cdktf.IResolvable): void; get destinationsInput(): any; } export interface MpsOutputOutputRtpSettingsDestinations { /** * The target IP of the relay. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#ip MpsOutput#ip} */ readonly ip: string; /** * Destination port for relays. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#port MpsOutput#port} */ readonly port: number; } export declare function mpsOutputOutputRtpSettingsDestinationsToTerraform(struct?: MpsOutputOutputRtpSettingsDestinations | cdktf.IResolvable): any; export declare function mpsOutputOutputRtpSettingsDestinationsToHclTerraform(struct?: MpsOutputOutputRtpSettingsDestinations | cdktf.IResolvable): any; export declare class MpsOutputOutputRtpSettingsDestinationsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): MpsOutputOutputRtpSettingsDestinations | cdktf.IResolvable | undefined; set internalValue(value: MpsOutputOutputRtpSettingsDestinations | cdktf.IResolvable | undefined); private _ip?; get ip(): string; set ip(value: string); get ipInput(): string; private _port?; get port(): number; set port(value: number); get portInput(): number; } export declare class MpsOutputOutputRtpSettingsDestinationsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MpsOutputOutputRtpSettingsDestinations[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): MpsOutputOutputRtpSettingsDestinationsOutputReference; } export interface MpsOutputOutputRtpSettings { /** * You can only fill in none. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#fec MpsOutput#fec} */ readonly fec: string; /** * Idle timeout, unit ms. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#idle_timeout MpsOutput#idle_timeout} */ readonly idleTimeout: number; /** * destinations block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#destinations MpsOutput#destinations} */ readonly destinations: MpsOutputOutputRtpSettingsDestinations[] | cdktf.IResolvable; } export declare function mpsOutputOutputRtpSettingsToTerraform(struct?: MpsOutputOutputRtpSettingsOutputReference | MpsOutputOutputRtpSettings): any; export declare function mpsOutputOutputRtpSettingsToHclTerraform(struct?: MpsOutputOutputRtpSettingsOutputReference | MpsOutputOutputRtpSettings): any; export declare class MpsOutputOutputRtpSettingsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): MpsOutputOutputRtpSettings | undefined; set internalValue(value: MpsOutputOutputRtpSettings | undefined); private _fec?; get fec(): string; set fec(value: string); get fecInput(): string; private _idleTimeout?; get idleTimeout(): number; set idleTimeout(value: number); get idleTimeoutInput(): number; private _destinations; get destinations(): MpsOutputOutputRtpSettingsDestinationsList; putDestinations(value: MpsOutputOutputRtpSettingsDestinations[] | cdktf.IResolvable): void; get destinationsInput(): any; } export interface MpsOutputOutputSrtSettingsDestinations { /** * Output IP. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#ip MpsOutput#ip} */ readonly ip: string; /** * output port. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#port MpsOutput#port} */ readonly port: number; } export declare function mpsOutputOutputSrtSettingsDestinationsToTerraform(struct?: MpsOutputOutputSrtSettingsDestinations | cdktf.IResolvable): any; export declare function mpsOutputOutputSrtSettingsDestinationsToHclTerraform(struct?: MpsOutputOutputSrtSettingsDestinations | cdktf.IResolvable): any; export declare class MpsOutputOutputSrtSettingsDestinationsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): MpsOutputOutputSrtSettingsDestinations | cdktf.IResolvable | undefined; set internalValue(value: MpsOutputOutputSrtSettingsDestinations | cdktf.IResolvable | undefined); private _ip?; get ip(): string; set ip(value: string); get ipInput(): string; private _port?; get port(): number; set port(value: number); get portInput(): number; } export declare class MpsOutputOutputSrtSettingsDestinationsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MpsOutputOutputSrtSettingsDestinations[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): MpsOutputOutputSrtSettingsDestinationsOutputReference; } export interface MpsOutputOutputSrtSettings { /** * The total delay of relaying SRT, the default is 0, the unit is ms, and the range is [0, 3000]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#latency MpsOutput#latency} */ readonly latency?: number; /** * SRT mode, optional [LISTENER|CALLER], default is CALLER. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#mode MpsOutput#mode} */ readonly mode?: string; /** * The encryption key for relaying SRT, which is empty by default, indicating no encryption. Only ascii code values can be filled in, and the length is [10, 79]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#passphrase MpsOutput#passphrase} */ readonly passphrase?: string; /** * The key length of relay SRT, the default is 0, optional [0|16|24|32]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#pb_key_len MpsOutput#pb_key_len} */ readonly pbKeyLen?: number; /** * The peer idle timeout for relaying SRT, the default is 5000, the unit is ms, and the range is [1000, 10000]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#peer_idle_timeout MpsOutput#peer_idle_timeout} */ readonly peerIdleTimeout?: number; /** * The peer delay of relaying SRT, the default is 0, the unit is ms, and the range is [0, 3000]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#peer_latency MpsOutput#peer_latency} */ readonly peerLatency?: number; /** * The reception delay of relay SRT, the default is 120, the unit is ms, the range is [0, 3000]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#recv_latency MpsOutput#recv_latency} */ readonly recvLatency?: number; /** * relay the stream ID of SRT. You can choose uppercase and lowercase letters, numbers and special characters (.#!:&,=_-). The length is 0~512. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#stream_id MpsOutput#stream_id} */ readonly streamId?: string; /** * destinations block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#destinations MpsOutput#destinations} */ readonly destinations: MpsOutputOutputSrtSettingsDestinations[] | cdktf.IResolvable; } export declare function mpsOutputOutputSrtSettingsToTerraform(struct?: MpsOutputOutputSrtSettingsOutputReference | MpsOutputOutputSrtSettings): any; export declare function mpsOutputOutputSrtSettingsToHclTerraform(struct?: MpsOutputOutputSrtSettingsOutputReference | MpsOutputOutputSrtSettings): any; export declare class MpsOutputOutputSrtSettingsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): MpsOutputOutputSrtSettings | undefined; set internalValue(value: MpsOutputOutputSrtSettings | undefined); private _latency?; get latency(): number; set latency(value: number); resetLatency(): void; get latencyInput(): number; private _mode?; get mode(): string; set mode(value: string); resetMode(): void; get modeInput(): string; private _passphrase?; get passphrase(): string; set passphrase(value: string); resetPassphrase(): void; get passphraseInput(): string; private _pbKeyLen?; get pbKeyLen(): number; set pbKeyLen(value: number); resetPbKeyLen(): void; get pbKeyLenInput(): number; private _peerIdleTimeout?; get peerIdleTimeout(): number; set peerIdleTimeout(value: number); resetPeerIdleTimeout(): void; get peerIdleTimeoutInput(): number; private _peerLatency?; get peerLatency(): number; set peerLatency(value: number); resetPeerLatency(): void; get peerLatencyInput(): number; private _recvLatency?; get recvLatency(): number; set recvLatency(value: number); resetRecvLatency(): void; get recvLatencyInput(): number; private _streamId?; get streamId(): string; set streamId(value: string); resetStreamId(): void; get streamIdInput(): string; private _destinations; get destinations(): MpsOutputOutputSrtSettingsDestinationsList; putDestinations(value: MpsOutputOutputSrtSettingsDestinations[] | cdktf.IResolvable): void; get destinationsInput(): any; } export interface MpsOutputOutput { /** * IP whitelist list, the format is CIDR, such as 0.0.0.0/0. When the Protocol is RTMP_PULL, it is valid, and if it is empty, it means that the client IP is not limited. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#allow_ip_list MpsOutput#allow_ip_list} */ readonly allowIpList?: string[]; /** * Output description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#description MpsOutput#description} */ readonly description: string; /** * The maximum number of concurrent pull streams, the maximum is 4, and the default is 4. Only SRT or RTMP_PULL can set this parameter. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#max_concurrent MpsOutput#max_concurrent} */ readonly maxConcurrent?: number; /** * The name of the output. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#output_name MpsOutput#output_name} */ readonly outputName: string; /** * Output region. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#output_region MpsOutput#output_region} */ readonly outputRegion: string; /** * Output protocol, optional [SRT|RTP|RTMP|RTMP_PULL]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#protocol MpsOutput#protocol} */ readonly protocol: string; /** * rtmp_settings block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#rtmp_settings MpsOutput#rtmp_settings} */ readonly rtmpSettings?: MpsOutputOutputRtmpSettings; /** * rtp_settings block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#rtp_settings MpsOutput#rtp_settings} */ readonly rtpSettings?: MpsOutputOutputRtpSettings; /** * srt_settings block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#srt_settings MpsOutput#srt_settings} */ readonly srtSettings?: MpsOutputOutputSrtSettings; } export declare function mpsOutputOutputToTerraform(struct?: MpsOutputOutputOutputReference | MpsOutputOutput): any; export declare function mpsOutputOutputToHclTerraform(struct?: MpsOutputOutputOutputReference | MpsOutputOutput): any; export declare class MpsOutputOutputOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): MpsOutputOutput | undefined; set internalValue(value: MpsOutputOutput | undefined); private _allowIpList?; get allowIpList(): string[]; set allowIpList(value: string[]); resetAllowIpList(): void; get allowIpListInput(): string[]; private _description?; get description(): string; set description(value: string); get descriptionInput(): string; private _maxConcurrent?; get maxConcurrent(): number; set maxConcurrent(value: number); resetMaxConcurrent(): void; get maxConcurrentInput(): number; private _outputName?; get outputName(): string; set outputName(value: string); get outputNameInput(): string; private _outputRegion?; get outputRegion(): string; set outputRegion(value: string); get outputRegionInput(): string; private _protocol?; get protocol(): string; set protocol(value: string); get protocolInput(): string; private _rtmpSettings; get rtmpSettings(): MpsOutputOutputRtmpSettingsOutputReference; putRtmpSettings(value: MpsOutputOutputRtmpSettings): void; resetRtmpSettings(): void; get rtmpSettingsInput(): MpsOutputOutputRtmpSettings; private _rtpSettings; get rtpSettings(): MpsOutputOutputRtpSettingsOutputReference; putRtpSettings(value: MpsOutputOutputRtpSettings): void; resetRtpSettings(): void; get rtpSettingsInput(): MpsOutputOutputRtpSettings; private _srtSettings; get srtSettings(): MpsOutputOutputSrtSettingsOutputReference; putSrtSettings(value: MpsOutputOutputSrtSettings): void; resetSrtSettings(): void; get srtSettingsInput(): MpsOutputOutputSrtSettings; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output tencentcloud_mps_output} */ export declare class MpsOutput extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_mps_output"; /** * Generates CDKTF code for importing a MpsOutput resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the MpsOutput to import * @param importFromId The id of the existing MpsOutput that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MpsOutput to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mps_output tencentcloud_mps_output} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options MpsOutputConfig */ constructor(scope: Construct, id: string, config: MpsOutputConfig); private _flowId?; get flowId(): string; set flowId(value: string); get flowIdInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _output; get output(): MpsOutputOutputOutputReference; putOutput(value: MpsOutputOutput): void; get outputInput(): MpsOutputOutput; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }