import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Gets information about a GatewayNetwork (a connection between a Public Gateway and a Private Network).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * const main = new scaleway.network.GatewayNetwork("main", {
 *     gatewayId: pg01.id,
 *     privateNetworkId: pn01.id,
 *     dhcpId: dhcp01.id,
 *     cleanupDhcp: true,
 *     enableMasquerade: true,
 * });
 * const byId = scaleway.network.getGatewayNetworkOutput({
 *     gatewayNetworkId: main.id,
 * });
 * const byGatewayAndPn = scaleway.network.getGatewayNetwork({
 *     gatewayId: pg01.id,
 *     privateNetworkId: pn01.id,
 * });
 * ```
 */
export declare function getGatewayNetwork(args?: GetGatewayNetworkArgs, opts?: pulumi.InvokeOptions): Promise<GetGatewayNetworkResult>;
/**
 * A collection of arguments for invoking getGatewayNetwork.
 */
export interface GetGatewayNetworkArgs {
    dhcpId?: string;
    enableMasquerade?: boolean;
    gatewayId?: string;
    /**
     * ID of the GatewayNetwork.
     */
    gatewayNetworkId?: string;
    privateNetworkId?: string;
}
/**
 * A collection of values returned by getGatewayNetwork.
 */
export interface GetGatewayNetworkResult {
    readonly cleanupDhcp: boolean;
    readonly createdAt: string;
    readonly dhcpId?: string;
    readonly enableDhcp: boolean;
    readonly enableMasquerade?: boolean;
    readonly gatewayId?: string;
    readonly gatewayNetworkId?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly ipamConfigs: outputs.network.GetGatewayNetworkIpamConfig[];
    readonly macAddress: string;
    readonly privateIps: outputs.network.GetGatewayNetworkPrivateIp[];
    readonly privateNetworkId?: string;
    readonly staticAddress: string;
    readonly status: string;
    readonly updatedAt: string;
    readonly zone: string;
}
/**
 * Gets information about a GatewayNetwork (a connection between a Public Gateway and a Private Network).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * const main = new scaleway.network.GatewayNetwork("main", {
 *     gatewayId: pg01.id,
 *     privateNetworkId: pn01.id,
 *     dhcpId: dhcp01.id,
 *     cleanupDhcp: true,
 *     enableMasquerade: true,
 * });
 * const byId = scaleway.network.getGatewayNetworkOutput({
 *     gatewayNetworkId: main.id,
 * });
 * const byGatewayAndPn = scaleway.network.getGatewayNetwork({
 *     gatewayId: pg01.id,
 *     privateNetworkId: pn01.id,
 * });
 * ```
 */
export declare function getGatewayNetworkOutput(args?: GetGatewayNetworkOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetGatewayNetworkResult>;
/**
 * A collection of arguments for invoking getGatewayNetwork.
 */
export interface GetGatewayNetworkOutputArgs {
    dhcpId?: pulumi.Input<string | undefined>;
    enableMasquerade?: pulumi.Input<boolean | undefined>;
    gatewayId?: pulumi.Input<string | undefined>;
    /**
     * ID of the GatewayNetwork.
     */
    gatewayNetworkId?: pulumi.Input<string | undefined>;
    privateNetworkId?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getGatewayNetwork.d.ts.map