import * as pulumi from "@pulumi/pulumi";
import { output as outputs } from "../types";
/**
 * Use this data source to get a list of VPC supplementary network interfaces.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const config = new pulumi.Config();
 * const subnetId = config.requireObject("subnetId");
 * const parentId = config.requireObject("parentId");
 * const test = huaweicloud.Vpc.getSubNetworkInterfaces({
 *     subnetId: subnetId,
 *     parentId: parentId,
 * });
 * ```
 */
export declare function getSubNetworkInterfaces(args?: GetSubNetworkInterfacesArgs, opts?: pulumi.InvokeOptions): Promise<GetSubNetworkInterfacesResult>;
/**
 * A collection of arguments for invoking getSubNetworkInterfaces.
 */
export interface GetSubNetworkInterfacesArgs {
    /**
     * Specifies the description of the supplementary network interface.
     */
    descriptions?: string[];
    /**
     * Specifies the ID of the supplementary network interface.
     */
    interfaceId?: string;
    /**
     * Specifies the private IPv4 address of the supplementary network interface.
     */
    ipAddress?: string;
    /**
     * Specifies the MAC address of the supplementary network interface.
     */
    macAddress?: string;
    /**
     * Specifies the ID of the elastic network interface
     * to which the supplementary network interface belongs.
     */
    parentId?: string;
    /**
     * Specifies the region in which to query the resource.
     * If omitted, the provider-level region will be used.
     */
    region?: string;
    /**
     * Specifies the ID of the subnet to which the supplementary network interface belongs.
     */
    subnetId?: string;
    /**
     * Specifies the ID of the VPC to which the supplementary network interface belongs.
     */
    vpcId?: string;
}
/**
 * A collection of values returned by getSubNetworkInterfaces.
 */
export interface GetSubNetworkInterfacesResult {
    /**
     * The description of the supplementary network interface.
     */
    readonly descriptions?: string[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly interfaceId?: string;
    /**
     * The private IPv4 address of the supplementary network interface.
     */
    readonly ipAddress?: string;
    /**
     * The MAC address of the supplementary network interface.
     */
    readonly macAddress?: string;
    /**
     * The ID of the elastic network interface to which the supplementary network interface belongs.
     */
    readonly parentId?: string;
    readonly region: string;
    /**
     * The list of supplementary network interfaces.
     */
    readonly subNetworkInterfaces: outputs.Vpc.GetSubNetworkInterfacesSubNetworkInterface[];
    /**
     * The ID of the subnet to which the supplementary network interface belongs.
     */
    readonly subnetId?: string;
    /**
     * The ID of the VPC to which the supplementary network interface belongs.
     */
    readonly vpcId?: string;
}
export declare function getSubNetworkInterfacesOutput(args?: GetSubNetworkInterfacesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetSubNetworkInterfacesResult>;
/**
 * A collection of arguments for invoking getSubNetworkInterfaces.
 */
export interface GetSubNetworkInterfacesOutputArgs {
    /**
     * Specifies the description of the supplementary network interface.
     */
    descriptions?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Specifies the ID of the supplementary network interface.
     */
    interfaceId?: pulumi.Input<string>;
    /**
     * Specifies the private IPv4 address of the supplementary network interface.
     */
    ipAddress?: pulumi.Input<string>;
    /**
     * Specifies the MAC address of the supplementary network interface.
     */
    macAddress?: pulumi.Input<string>;
    /**
     * Specifies the ID of the elastic network interface
     * to which the supplementary network interface belongs.
     */
    parentId?: pulumi.Input<string>;
    /**
     * Specifies the region in which to query the resource.
     * If omitted, the provider-level region will be used.
     */
    region?: pulumi.Input<string>;
    /**
     * Specifies the ID of the subnet to which the supplementary network interface belongs.
     */
    subnetId?: pulumi.Input<string>;
    /**
     * Specifies the ID of the VPC to which the supplementary network interface belongs.
     */
    vpcId?: pulumi.Input<string>;
}
