import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Fabric V4 API compatible data resource that allow user to fetch Fabric Network for a given UUID
 *
 * Additional documentation:
 * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-networks-implement.htm
 * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#fabric-networks
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as equinix from "@equinix-labs/pulumi-equinix";
 *
 * const networkDataName = equinix.fabric.getNetwork({
 *     uuid: "<uuid_of_network>",
 * });
 * export const id = networkDataName.then(networkDataName => networkDataName.id);
 * export const name = networkDataName.then(networkDataName => networkDataName.name);
 * export const scope = networkDataName.then(networkDataName => networkDataName.scope);
 * export const type = networkDataName.then(networkDataName => networkDataName.type);
 * export const region = networkDataName.then(networkDataName => networkDataName.locations?.[0]?.region);
 * ```
 */
export declare function getNetwork(args: GetNetworkArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkResult>;
/**
 * A collection of arguments for invoking getNetwork.
 */
export interface GetNetworkArgs {
    /**
     * Equinix-assigned network identifier
     */
    uuid: string;
}
/**
 * A collection of values returned by getNetwork.
 */
export interface GetNetworkResult {
    /**
     * Information on asset change operation
     */
    readonly change: outputs.fabric.GetNetworkChange;
    /**
     * A permanent record of asset creation, modification, or deletion
     */
    readonly changeLog: outputs.fabric.GetNetworkChangeLog;
    /**
     * Number of connections associated with this network
     */
    readonly connectionsCount: number;
    /**
     * Fabric Network URI information
     */
    readonly href: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Fabric Network location
     */
    readonly locations: outputs.fabric.GetNetworkLocation[];
    /**
     * Fabric Network name. An alpha-numeric 24 characters string which can include only hyphens and underscores
     */
    readonly name: string;
    /**
     * Preferences for notifications on Fabric Network configuration or status changes
     */
    readonly notifications: outputs.fabric.GetNetworkNotification[];
    /**
     * Network operation information that is associated with this Fabric Network
     */
    readonly operation: outputs.fabric.GetNetworkOperation;
    /**
     * Fabric Network project
     */
    readonly project: outputs.fabric.GetNetworkProject;
    /**
     * Fabric Network scope
     */
    readonly scope: string;
    /**
     * Fabric Network overall state
     */
    readonly state: string;
    /**
     * Supported Network types - EVPLAN, EPLAN, IPWAN
     */
    readonly type: string;
    /**
     * Equinix-assigned network identifier
     */
    readonly uuid: string;
}
/**
 * Fabric V4 API compatible data resource that allow user to fetch Fabric Network for a given UUID
 *
 * Additional documentation:
 * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-networks-implement.htm
 * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#fabric-networks
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as equinix from "@equinix-labs/pulumi-equinix";
 *
 * const networkDataName = equinix.fabric.getNetwork({
 *     uuid: "<uuid_of_network>",
 * });
 * export const id = networkDataName.then(networkDataName => networkDataName.id);
 * export const name = networkDataName.then(networkDataName => networkDataName.name);
 * export const scope = networkDataName.then(networkDataName => networkDataName.scope);
 * export const type = networkDataName.then(networkDataName => networkDataName.type);
 * export const region = networkDataName.then(networkDataName => networkDataName.locations?.[0]?.region);
 * ```
 */
export declare function getNetworkOutput(args: GetNetworkOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNetworkResult>;
/**
 * A collection of arguments for invoking getNetwork.
 */
export interface GetNetworkOutputArgs {
    /**
     * Equinix-assigned network identifier
     */
    uuid: pulumi.Input<string>;
}
