import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Represents a router input in AWS Elemental MediaConnect that can be used to egress content transmitted from router inputs
 */
export declare class RouterOutputResource extends pulumi.CustomResource {
    /**
     * Get an existing RouterOutputResource 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): RouterOutputResource;
    /**
     * Returns true if the given object is an instance of RouterOutputResource.  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 RouterOutputResource;
    /**
     * The Amazon Resource Name (ARN) of the router output.
     */
    readonly arn: pulumi.Output<string>;
    /**
     * The Availability Zone where you want to create the router output. This must be a valid Availability Zone for the region specified by regionName, or the current region if no regionName is provided.
     */
    readonly availabilityZone: pulumi.Output<string | undefined>;
    /**
     * The unique identifier of the router output.
     */
    readonly awsId: pulumi.Output<string>;
    readonly configuration: pulumi.Output<outputs.mediaconnect.RouterOutputResourceRouterOutputConfiguration0Properties | outputs.mediaconnect.RouterOutputResourceRouterOutputConfiguration1Properties | outputs.mediaconnect.RouterOutputResourceRouterOutputConfiguration2Properties>;
    /**
     * The timestamp when the router output was created.
     */
    readonly createdAt: pulumi.Output<string>;
    /**
     * The IP address of the router output.
     */
    readonly ipAddress: pulumi.Output<string>;
    /**
     * The maintenance configuration settings applied to this router output.
     */
    readonly maintenanceConfiguration: pulumi.Output<outputs.mediaconnect.RouterOutputResourceMaintenanceConfiguration0Properties | outputs.mediaconnect.RouterOutputResourceMaintenanceConfiguration1Properties | undefined>;
    /**
     * The type of maintenance configuration applied to this router output.
     */
    readonly maintenanceType: pulumi.Output<enums.mediaconnect.RouterOutputResourceMaintenanceType>;
    /**
     * The maximum bitrate for the router output.
     */
    readonly maximumBitrate: pulumi.Output<number>;
    /**
     * The name of the router output.
     */
    readonly name: pulumi.Output<string>;
    /**
     * The type of the router output.
     */
    readonly outputType: pulumi.Output<enums.mediaconnect.RouterOutputResourceRouterOutputType>;
    /**
     * The AWS Region for the router output. Defaults to the current region if not specified.
     */
    readonly regionName: pulumi.Output<string | undefined>;
    /**
     * The current state of the association between the router output and its input.
     */
    readonly routedState: pulumi.Output<enums.mediaconnect.RouterOutputResourceRouterOutputRoutedState>;
    /**
     * Indicates whether the router output is configured for Regional or global routing.
     */
    readonly routingScope: pulumi.Output<enums.mediaconnect.RouterOutputResourceRoutingScope>;
    /**
     * The overall state of the router output.
     */
    readonly state: pulumi.Output<enums.mediaconnect.RouterOutputResourceRouterOutputState>;
    /**
     * Key-value pairs that can be used to tag this router output.
     */
    readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
    /**
     * The tier level of the router output.
     */
    readonly tier: pulumi.Output<enums.mediaconnect.RouterOutputResourceRouterOutputTier>;
    /**
     * The timestamp when the router output was last updated.
     */
    readonly updatedAt: pulumi.Output<string>;
    /**
     * Create a RouterOutputResource 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: RouterOutputResourceArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a RouterOutputResource resource.
 */
export interface RouterOutputResourceArgs {
    /**
     * The Availability Zone where you want to create the router output. This must be a valid Availability Zone for the region specified by regionName, or the current region if no regionName is provided.
     */
    availabilityZone?: pulumi.Input<string>;
    configuration: pulumi.Input<inputs.mediaconnect.RouterOutputResourceRouterOutputConfiguration0PropertiesArgs | inputs.mediaconnect.RouterOutputResourceRouterOutputConfiguration1PropertiesArgs | inputs.mediaconnect.RouterOutputResourceRouterOutputConfiguration2PropertiesArgs>;
    /**
     * The maintenance configuration settings applied to this router output.
     */
    maintenanceConfiguration?: pulumi.Input<inputs.mediaconnect.RouterOutputResourceMaintenanceConfiguration0PropertiesArgs | inputs.mediaconnect.RouterOutputResourceMaintenanceConfiguration1PropertiesArgs>;
    /**
     * The maximum bitrate for the router output.
     */
    maximumBitrate: pulumi.Input<number>;
    /**
     * The name of the router output.
     */
    name?: pulumi.Input<string>;
    /**
     * The AWS Region for the router output. Defaults to the current region if not specified.
     */
    regionName?: pulumi.Input<string>;
    /**
     * Indicates whether the router output is configured for Regional or global routing.
     */
    routingScope: pulumi.Input<enums.mediaconnect.RouterOutputResourceRoutingScope>;
    /**
     * Key-value pairs that can be used to tag this router output.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
    /**
     * The tier level of the router output.
     */
    tier: pulumi.Input<enums.mediaconnect.RouterOutputResourceRouterOutputTier>;
}
