import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Gets information about multiple Interlink PoPs (Points of Presence).
 *
 * A PoP is a physical location where Scaleway infrastructure connects to external networks. Use this data source to list and filter available PoPs for creating interlink connections.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // List all PoPs in a region
 * const all = scaleway.interlink.getPops({
 *     region: "fr-par",
 * });
 * // List PoPs with a specific hosting provider name
 * const byHostingProviderName = scaleway.interlink.getPops({
 *     hostingProviderName: "OpCore",
 * });
 * // List PoPs with dedicated connections available
 * const dedicated = scaleway.interlink.getPops({
 *     dedicatedAvailable: true,
 * });
 * ```
 */
export declare function getPops(args?: GetPopsArgs, opts?: pulumi.InvokeOptions): Promise<GetPopsResult>;
/**
 * A collection of arguments for invoking getPops.
 */
export interface GetPopsArgs {
    /**
     * Filter for PoPs with a dedicated connection available for self-hosted links.
     */
    dedicatedAvailable?: boolean;
    /**
     * Hosting provider name to filter for.
     */
    hostingProviderName?: string;
    /**
     * Filter for PoPs with a shared connection allowing this bandwidth size.
     */
    linkBandwidthMbps?: number;
    /**
     * PoP name to filter for.
     */
    name?: string;
    /**
     * Filter for PoPs hosting an available shared connection from this partner.
     */
    partnerId?: string;
    /**
     * `region`) The region to list PoPs from.
     */
    region?: string;
}
/**
 * A collection of values returned by getPops.
 */
export interface GetPopsResult {
    readonly dedicatedAvailable?: boolean;
    /**
     * Name of the PoP's hosting provider.
     */
    readonly hostingProviderName?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly linkBandwidthMbps?: number;
    /**
     * Name of the PoP.
     */
    readonly name?: string;
    readonly partnerId?: string;
    /**
     * List of PoPs matching the filters. Each entry contains:
     */
    readonly pops: outputs.interlink.GetPopsPop[];
    /**
     * Region of the PoP.
     */
    readonly region?: string;
}
/**
 * Gets information about multiple Interlink PoPs (Points of Presence).
 *
 * A PoP is a physical location where Scaleway infrastructure connects to external networks. Use this data source to list and filter available PoPs for creating interlink connections.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * // List all PoPs in a region
 * const all = scaleway.interlink.getPops({
 *     region: "fr-par",
 * });
 * // List PoPs with a specific hosting provider name
 * const byHostingProviderName = scaleway.interlink.getPops({
 *     hostingProviderName: "OpCore",
 * });
 * // List PoPs with dedicated connections available
 * const dedicated = scaleway.interlink.getPops({
 *     dedicatedAvailable: true,
 * });
 * ```
 */
export declare function getPopsOutput(args?: GetPopsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetPopsResult>;
/**
 * A collection of arguments for invoking getPops.
 */
export interface GetPopsOutputArgs {
    /**
     * Filter for PoPs with a dedicated connection available for self-hosted links.
     */
    dedicatedAvailable?: pulumi.Input<boolean | undefined>;
    /**
     * Hosting provider name to filter for.
     */
    hostingProviderName?: pulumi.Input<string | undefined>;
    /**
     * Filter for PoPs with a shared connection allowing this bandwidth size.
     */
    linkBandwidthMbps?: pulumi.Input<number | undefined>;
    /**
     * PoP name to filter for.
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * Filter for PoPs hosting an available shared connection from this partner.
     */
    partnerId?: pulumi.Input<string | undefined>;
    /**
     * `region`) The region to list PoPs from.
     */
    region?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getPops.d.ts.map