import * as pulumi from "@pulumi/pulumi";
/**
 * Use this data source to get the details of an available EIP.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const byAddress = pulumi.output(huaweicloud.Eip.getEip({
 *     publicIp: "123.60.208.163",
 * }));
 * ```
 */
export declare function getEip(args?: GetEipArgs, opts?: pulumi.InvokeOptions): Promise<GetEipResult>;
/**
 * A collection of arguments for invoking getEip.
 */
export interface GetEipArgs {
    /**
     * Specifies the enterprise project id of the EIP.
     */
    enterpriseProjectId?: string;
    /**
     * Specifies the port id of the EIP.
     */
    portId?: string;
    /**
     * Specifies the public **IPv4** address of the EIP.
     */
    publicIp?: string;
    /**
     * Specifies the region in which to obtain the EIP.
     * If omitted, the provider-level region will be used.
     */
    region?: string;
}
/**
 * A collection of values returned by getEip.
 */
export interface GetEipResult {
    /**
     * The bandwidth id of the EIP.
     */
    readonly bandwidthId: string;
    /**
     * The bandwidth name of the EIP.
     */
    readonly bandwidthName: string;
    /**
     * The bandwidth share type of the EIP.
     */
    readonly bandwidthShareType: string;
    /**
     * The bandwidth size of the EIP.
     */
    readonly bandwidthSize: number;
    /**
     * The create time of the EIP.
     */
    readonly createdAt: string;
    readonly enterpriseProjectId: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The IP version, either 4 or 6.
     */
    readonly ipVersion: number;
    /**
     * The IPv6 address of the EIP.
     */
    readonly ipv6Address: string;
    /**
     * The name of the EIP.
     */
    readonly name: string;
    readonly portId: string;
    /**
     * The private ip of the EIP.
     */
    readonly privateIp: string;
    readonly publicIp: string;
    readonly region: string;
    /**
     * The status of the EIP.
     */
    readonly status: string;
    /**
     * The type of the EIP.
     */
    readonly type: string;
}
export declare function getEipOutput(args?: GetEipOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetEipResult>;
/**
 * A collection of arguments for invoking getEip.
 */
export interface GetEipOutputArgs {
    /**
     * Specifies the enterprise project id of the EIP.
     */
    enterpriseProjectId?: pulumi.Input<string>;
    /**
     * Specifies the port id of the EIP.
     */
    portId?: pulumi.Input<string>;
    /**
     * Specifies the public **IPv4** address of the EIP.
     */
    publicIp?: pulumi.Input<string>;
    /**
     * Specifies the region in which to obtain the EIP.
     * If omitted, the provider-level region will be used.
     */
    region?: pulumi.Input<string>;
}
