@equinix-labs/pulumi-equinix
Version:
A Pulumi package for creating and managing equinix cloud resources.
103 lines (102 loc) • 4 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as equinix from "@equinix-labs/pulumi-equinix";
*
* const metros = equinix.fabric.getMetros({
* pagination: {
* limit: 12,
* offset: 6,
* },
* });
* export const numberOfReturnedMetros = metros.then(metros => metros.datas).length;
* export const firstMetroType = metros.then(metros => metros.datas?.[0]?.type);
* export const firstMetroCode = metros.then(metros => metros.datas?.[0]?.code);
* export const firstMetroRegion = metros.then(metros => metros.datas?.[0]?.region);
* export const firstMetroName = metros.then(metros => metros.datas?.[0]?.name);
* export const firstMetroEquinixAsn = metros.then(metros => metros.datas?.[0]?.equinixAsn);
* export const firstMetroLocalVcBandwidthMax = metros.then(metros => metros.datas?.[0]?.localVcBandwidthMax);
* export const firstMetroGeoCoordinates = metros.then(metros => metros.datas?.[0]?.geoCoordinates);
* export const firstMetroConnectedMetros = metros.then(metros => metros.datas?.[0]?.connectedMetros);
* export const firstMetroGeoScopes = metros.then(metros => metros.datas?.[0]?.geoScopes);
* ```
*/
export declare function getMetros(args: GetMetrosArgs, opts?: pulumi.InvokeOptions): Promise<GetMetrosResult>;
/**
* A collection of arguments for invoking getMetros.
*/
export interface GetMetrosArgs {
/**
* Pagination details for the returned metro list
*/
pagination: inputs.fabric.GetMetrosPagination;
/**
* User On Boarded Metros based on Fabric resource availability
*/
presence?: string;
}
/**
* A collection of values returned by getMetros.
*/
export interface GetMetrosResult {
/**
* Returned list of metro objects
*/
readonly datas: outputs.fabric.GetMetrosData[];
/**
* The unique identifier of the resource
*/
readonly id: string;
/**
* Pagination details for the returned metro list
*/
readonly pagination: outputs.fabric.GetMetrosPagination;
/**
* User On Boarded Metros based on Fabric resource availability
*/
readonly presence?: string;
}
/**
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as equinix from "@equinix-labs/pulumi-equinix";
*
* const metros = equinix.fabric.getMetros({
* pagination: {
* limit: 12,
* offset: 6,
* },
* });
* export const numberOfReturnedMetros = metros.then(metros => metros.datas).length;
* export const firstMetroType = metros.then(metros => metros.datas?.[0]?.type);
* export const firstMetroCode = metros.then(metros => metros.datas?.[0]?.code);
* export const firstMetroRegion = metros.then(metros => metros.datas?.[0]?.region);
* export const firstMetroName = metros.then(metros => metros.datas?.[0]?.name);
* export const firstMetroEquinixAsn = metros.then(metros => metros.datas?.[0]?.equinixAsn);
* export const firstMetroLocalVcBandwidthMax = metros.then(metros => metros.datas?.[0]?.localVcBandwidthMax);
* export const firstMetroGeoCoordinates = metros.then(metros => metros.datas?.[0]?.geoCoordinates);
* export const firstMetroConnectedMetros = metros.then(metros => metros.datas?.[0]?.connectedMetros);
* export const firstMetroGeoScopes = metros.then(metros => metros.datas?.[0]?.geoScopes);
* ```
*/
export declare function getMetrosOutput(args: GetMetrosOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetMetrosResult>;
/**
* A collection of arguments for invoking getMetros.
*/
export interface GetMetrosOutputArgs {
/**
* Pagination details for the returned metro list
*/
pagination: pulumi.Input<inputs.fabric.GetMetrosPaginationArgs>;
/**
* User On Boarded Metros based on Fabric resource availability
*/
presence?: pulumi.Input<string>;
}