import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Resource schema for AWS::MediaConnect::FlowOutput
 */
export declare class FlowOutput extends pulumi.CustomResource {
    /**
     * Get an existing FlowOutput resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): FlowOutput;
    /**
     * Returns true if the given object is an instance of FlowOutput.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is FlowOutput;
    /**
     * The range of IP addresses that should be allowed to initiate output requests to this flow. These IP addresses should be in the form of a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16.
     */
    readonly cidrAllowList: pulumi.Output<string[] | undefined>;
    /**
     * A description of the output.
     */
    readonly description: pulumi.Output<string | undefined>;
    /**
     * The address where you want to send the output.
     */
    readonly destination: pulumi.Output<string | undefined>;
    /**
     * The type of key used for the encryption. If no keyType is provided, the service will use the default setting (static-key).
     */
    readonly encryption: pulumi.Output<outputs.mediaconnect.FlowOutputEncryption | undefined>;
    /**
     * The Amazon Resource Name (ARN), a unique identifier for any AWS resource, of the flow.
     */
    readonly flowArn: pulumi.Output<string>;
    /**
     * The maximum latency in milliseconds. This parameter applies only to RIST-based and Zixi-based streams.
     */
    readonly maxLatency: pulumi.Output<number | undefined>;
    /**
     * The definition for each media stream that is associated with the output.
     */
    readonly mediaStreamOutputConfigurations: pulumi.Output<outputs.mediaconnect.FlowOutputMediaStreamOutputConfiguration[] | undefined>;
    /**
     * The minimum latency in milliseconds.
     */
    readonly minLatency: pulumi.Output<number | undefined>;
    /**
     * The name of the output. This value must be unique within the current flow.
     */
    readonly name: pulumi.Output<string | undefined>;
    /**
     * The timecode source for the NDI output.
     */
    readonly ndiOutputTimecodeSource: pulumi.Output<enums.mediaconnect.FlowOutputNdiOutputTimecodeSource | undefined>;
    /**
     * A suffix for the names of the NDI sources that the flow creates. If a custom name isn't specified, MediaConnect uses the output name.
     */
    readonly ndiProgramName: pulumi.Output<string | undefined>;
    /**
     * A quality setting for the NDI Speed HQ encoder.
     */
    readonly ndiSpeedHqQuality: pulumi.Output<number | undefined>;
    /**
     * The ARN of the output.
     */
    readonly outputArn: pulumi.Output<string>;
    /**
     * An indication of whether the output should transmit data or not.
     */
    readonly outputStatus: pulumi.Output<enums.mediaconnect.FlowOutputOutputStatus | undefined>;
    /**
     * The port to use when content is distributed to this output.
     */
    readonly port: pulumi.Output<number | undefined>;
    /**
     * The protocol that is used by the source or output.
     */
    readonly protocol: pulumi.Output<enums.mediaconnect.FlowOutputProtocol | undefined>;
    /**
     * The remote ID for the Zixi-pull stream.
     */
    readonly remoteId: pulumi.Output<string | undefined>;
    readonly routerIntegrationState: pulumi.Output<enums.mediaconnect.FlowOutputRouterIntegrationState | undefined>;
    /**
     * Encryption information.
     */
    readonly routerIntegrationTransitEncryption: pulumi.Output<outputs.mediaconnect.FlowOutputFlowTransitEncryption | undefined>;
    /**
     * The smoothing latency in milliseconds for RIST, RTP, and RTP-FEC streams.
     */
    readonly smoothingLatency: pulumi.Output<number | undefined>;
    /**
     * The stream ID that you want to use for this transport. This parameter applies only to Zixi-based streams.
     */
    readonly streamId: pulumi.Output<string | undefined>;
    /**
     * Key-value pairs that can be used to tag and organize this flow output.
     */
    readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
    /**
     * The name of the VPC interface attachment to use for this output.
     */
    readonly vpcInterfaceAttachment: pulumi.Output<outputs.mediaconnect.FlowOutputVpcInterfaceAttachment | undefined>;
    /**
     * Create a FlowOutput resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: FlowOutputArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a FlowOutput resource.
 */
export interface FlowOutputArgs {
    /**
     * The range of IP addresses that should be allowed to initiate output requests to this flow. These IP addresses should be in the form of a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16.
     */
    cidrAllowList?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * A description of the output.
     */
    description?: pulumi.Input<string>;
    /**
     * The address where you want to send the output.
     */
    destination?: pulumi.Input<string>;
    /**
     * The type of key used for the encryption. If no keyType is provided, the service will use the default setting (static-key).
     */
    encryption?: pulumi.Input<inputs.mediaconnect.FlowOutputEncryptionArgs>;
    /**
     * The Amazon Resource Name (ARN), a unique identifier for any AWS resource, of the flow.
     */
    flowArn: pulumi.Input<string>;
    /**
     * The maximum latency in milliseconds. This parameter applies only to RIST-based and Zixi-based streams.
     */
    maxLatency?: pulumi.Input<number>;
    /**
     * The definition for each media stream that is associated with the output.
     */
    mediaStreamOutputConfigurations?: pulumi.Input<pulumi.Input<inputs.mediaconnect.FlowOutputMediaStreamOutputConfigurationArgs>[]>;
    /**
     * The minimum latency in milliseconds.
     */
    minLatency?: pulumi.Input<number>;
    /**
     * The name of the output. This value must be unique within the current flow.
     */
    name?: pulumi.Input<string>;
    /**
     * The timecode source for the NDI output.
     */
    ndiOutputTimecodeSource?: pulumi.Input<enums.mediaconnect.FlowOutputNdiOutputTimecodeSource>;
    /**
     * A suffix for the names of the NDI sources that the flow creates. If a custom name isn't specified, MediaConnect uses the output name.
     */
    ndiProgramName?: pulumi.Input<string>;
    /**
     * A quality setting for the NDI Speed HQ encoder.
     */
    ndiSpeedHqQuality?: pulumi.Input<number>;
    /**
     * An indication of whether the output should transmit data or not.
     */
    outputStatus?: pulumi.Input<enums.mediaconnect.FlowOutputOutputStatus>;
    /**
     * The port to use when content is distributed to this output.
     */
    port?: pulumi.Input<number>;
    /**
     * The protocol that is used by the source or output.
     */
    protocol?: pulumi.Input<enums.mediaconnect.FlowOutputProtocol>;
    /**
     * The remote ID for the Zixi-pull stream.
     */
    remoteId?: pulumi.Input<string>;
    routerIntegrationState?: pulumi.Input<enums.mediaconnect.FlowOutputRouterIntegrationState>;
    /**
     * Encryption information.
     */
    routerIntegrationTransitEncryption?: pulumi.Input<inputs.mediaconnect.FlowOutputFlowTransitEncryptionArgs>;
    /**
     * The smoothing latency in milliseconds for RIST, RTP, and RTP-FEC streams.
     */
    smoothingLatency?: pulumi.Input<number>;
    /**
     * The stream ID that you want to use for this transport. This parameter applies only to Zixi-based streams.
     */
    streamId?: pulumi.Input<string>;
    /**
     * Key-value pairs that can be used to tag and organize this flow output.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
    /**
     * The name of the VPC interface attachment to use for this output.
     */
    vpcInterfaceAttachment?: pulumi.Input<inputs.mediaconnect.FlowOutputVpcInterfaceAttachmentArgs>;
}
