import * as pulumi from "@pulumi/pulumi";
/**
 * This data source provides details about a specific Private Ip resource in Oracle Cloud Infrastructure Core service.
 *
 * Gets the specified private IP. You must specify the object's [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
 * Alternatively, you can get the object by using
 * [ListPrivateIps](https://docs.cloud.oracle.com/iaas/api/#/en/iaas/latest/PrivateIp/ListPrivateIps)
 * with the private IP address (for example, 10.0.3.3) and subnet [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testPrivateIp = oci.core.getPrivateIp({
 *     privateIpId: testPrivateIpOciCorePrivateIp.id,
 * });
 * ```
 */
export declare function getPrivateIp(args: GetPrivateIpArgs, opts?: pulumi.InvokeOptions): Promise<GetPrivateIpResult>;
/**
 * A collection of arguments for invoking getPrivateIp.
 */
export interface GetPrivateIpArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the private IP or IPv6.
     */
    privateIpId: string;
}
/**
 * A collection of values returned by getPrivateIp.
 */
export interface GetPrivateIpResult {
    /**
     * The private IP's availability domain. This attribute will be null if this is a *secondary* private IP assigned to a VNIC that is in a *regional* subnet.  Example: `Uocm:PHX-AD-1`
     */
    readonly availabilityDomain: string;
    /**
     * The secondary IPv4 CIDR prefix length.
     */
    readonly cidrPrefixLength: number;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment containing the private IP.
     */
    readonly compartmentId: string;
    /**
     * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Operations.CostCenter": "42"}`
     */
    readonly definedTags: {
        [key: string]: string;
    };
    /**
     * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
     */
    readonly displayName: string;
    /**
     * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).  Example: `{"Department": "Finance"}`
     */
    readonly freeformTags: {
        [key: string]: string;
    };
    /**
     * The hostname for the private IP. Used for DNS. The value is the hostname portion of the private IP's fully qualified domain name (FQDN) (for example, `bminstance1` in FQDN `bminstance1.subnet123.vcn1.oraclevcn.com`). Must be unique across all VNICs in the subnet and comply with [RFC 952](https://tools.ietf.org/html/rfc952) and [RFC 1123](https://tools.ietf.org/html/rfc1123).
     */
    readonly hostnameLabel: string;
    /**
     * The private IP's Oracle ID ([OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm)).
     */
    readonly id: string;
    /**
     * The private IP address of the `privateIp` object. The address is within the CIDR of the VNIC's subnet.
     */
    readonly ipAddress: string;
    /**
     * State of the IP address. If an IP address is assigned to a VNIC it is ASSIGNED, otherwise it is AVAILABLE.
     */
    readonly ipState: string;
    /**
     * Ipv4 Subnet CIDR specified whn creating the PrivateIP.
     */
    readonly ipv4subnetCidrAtCreation: string;
    /**
     * Whether this private IP is the primary one on the VNIC. Primary private IPs are unassigned and deleted automatically when the VNIC is terminated.  Example: `true`
     */
    readonly isPrimary: boolean;
    readonly isReserved: boolean;
    /**
     * Lifetime of the IP address. There are two types of IPv6 IPs:
     * * Ephemeral
     * * Reserved
     */
    readonly lifetime: string;
    readonly privateIpId: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the route table the IP address or VNIC will use. For more information, see [Source Based Routing](https://docs.oracle.com/iaas/Content/Network/Tasks/managingroutetables.htm#Overview_of_Routing_for_Your_VCN__source_routing).
     */
    readonly routeTableId: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the subnet the VNIC is in.
     */
    readonly subnetId: string;
    /**
     * The date and time the private IP was created, in the format defined by [RFC3339](https://tools.ietf.org/html/rfc3339).  Example: `2016-08-25T21:10:29.600Z`
     */
    readonly timeCreated: string;
    /**
     * Applicable only if the `PrivateIp` object is being used with a VLAN as part of the Oracle Cloud VMware Solution. The `vlanId` is the [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VLAN. See [Vlan](https://docs.cloud.oracle.com/iaas/api/#/en/iaas/latest/Vlan).
     */
    readonly vlanId: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VNIC the private IP is assigned to. The VNIC and private IP must be in the same subnet. However, if the `PrivateIp` object is being used with a VLAN as part of the Oracle Cloud VMware Solution, the `vnicId` is null.
     */
    readonly vnicId: string;
}
/**
 * This data source provides details about a specific Private Ip resource in Oracle Cloud Infrastructure Core service.
 *
 * Gets the specified private IP. You must specify the object's [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
 * Alternatively, you can get the object by using
 * [ListPrivateIps](https://docs.cloud.oracle.com/iaas/api/#/en/iaas/latest/PrivateIp/ListPrivateIps)
 * with the private IP address (for example, 10.0.3.3) and subnet [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testPrivateIp = oci.core.getPrivateIp({
 *     privateIpId: testPrivateIpOciCorePrivateIp.id,
 * });
 * ```
 */
export declare function getPrivateIpOutput(args: GetPrivateIpOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetPrivateIpResult>;
/**
 * A collection of arguments for invoking getPrivateIp.
 */
export interface GetPrivateIpOutputArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the private IP or IPv6.
     */
    privateIpId: pulumi.Input<string>;
}
//# sourceMappingURL=getPrivateIp.d.ts.map