import * as $dara from '@darabonba/typescript';
export declare class DescribeInstancesResponseBodyInstancesInstanceAdditionalInfo extends $dara.Model {
    enableHighDensityMode?: boolean;
    nodeSerialNumber?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceClockOptions extends $dara.Model {
    ptpStatus?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceCpuOptions extends $dara.Model {
    coreCount?: number;
    enableVISST?: boolean;
    enableVRDT?: boolean;
    /**
     * @example
     * enabled
     */
    nestedVirtualization?: string;
    numa?: string;
    threadsPerCore?: number;
    topologyType?: string;
    turboMode?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceDedicatedHostAttribute extends $dara.Model {
    dedicatedHostClusterId?: string;
    dedicatedHostId?: string;
    dedicatedHostName?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceDedicatedInstanceAttribute extends $dara.Model {
    affinity?: string;
    tenancy?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceEcsCapacityReservationAttr extends $dara.Model {
    capacityReservationId?: string;
    capacityReservationPreference?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceEipAddress extends $dara.Model {
    allocationId?: string;
    bandwidth?: number;
    internetChargeType?: string;
    ipAddress?: string;
    isSupportUnassociate?: boolean;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceHibernationOptions extends $dara.Model {
    configured?: boolean;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceImageOptions extends $dara.Model {
    currentOSNVMeSupported?: boolean;
    loginAsNonRoot?: boolean;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceInnerIpAddress extends $dara.Model {
    ipAddress?: string[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceMetadataOptions extends $dara.Model {
    httpEndpoint?: string;
    httpPutResponseHopLimit?: number;
    httpTokens?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv4PrefixSetsIpv4PrefixSet extends $dara.Model {
    ipv4Prefix?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv4PrefixSets extends $dara.Model {
    ipv4PrefixSet?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv4PrefixSetsIpv4PrefixSet[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv6PrefixSetsIpv6PrefixSet extends $dara.Model {
    ipv6Prefix?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv6PrefixSets extends $dara.Model {
    ipv6PrefixSet?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv6PrefixSetsIpv6PrefixSet[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv6SetsIpv6Set extends $dara.Model {
    ipv6Address?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv6Sets extends $dara.Model {
    ipv6Set?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv6SetsIpv6Set[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfacePrivateIpSetsPrivateIpSet extends $dara.Model {
    primary?: boolean;
    privateDnsName?: string;
    privateIpAddress?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfacePrivateIpSets extends $dara.Model {
    privateIpSet?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfacePrivateIpSetsPrivateIpSet[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterface extends $dara.Model {
    ipv4PrefixSets?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv4PrefixSets;
    ipv6PrefixSets?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv6PrefixSets;
    ipv6Sets?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfaceIpv6Sets;
    macAddress?: string;
    networkInterfaceId?: string;
    primaryIpAddress?: string;
    privateIpSets?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterfacePrivateIpSets;
    type?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceNetworkInterfaces extends $dara.Model {
    networkInterface?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfacesNetworkInterface[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceOperationLocksLockReason extends $dara.Model {
    lockMsg?: string;
    lockReason?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceOperationLocks extends $dara.Model {
    lockReason?: DescribeInstancesResponseBodyInstancesInstanceOperationLocksLockReason[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstancePrivateDnsNameOptions extends $dara.Model {
    enableInstanceIdDnsAAAARecord?: boolean;
    enableInstanceIdDnsARecord?: boolean;
    enableIpDnsARecord?: boolean;
    enableIpDnsPtrRecord?: boolean;
    hostnameType?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstancePublicIpAddress extends $dara.Model {
    ipAddress?: string[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceRdmaIpAddress extends $dara.Model {
    ipAddress?: string[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceSecurityGroupIds extends $dara.Model {
    securityGroupId?: string[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceTagsTag extends $dara.Model {
    tagKey?: string;
    tagValue?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceTags extends $dara.Model {
    tag?: DescribeInstancesResponseBodyInstancesInstanceTagsTag[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceVpcAttributesPrivateIpAddress extends $dara.Model {
    ipAddress?: string[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstanceVpcAttributes extends $dara.Model {
    natIpAddress?: string;
    privateIpAddress?: DescribeInstancesResponseBodyInstancesInstanceVpcAttributesPrivateIpAddress;
    vSwitchId?: string;
    vpcId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstancesInstance extends $dara.Model {
    /**
     * **if can be null:**
     * true
     */
    additionalInfo?: DescribeInstancesResponseBodyInstancesInstanceAdditionalInfo;
    autoReleaseTime?: string;
    clockOptions?: DescribeInstancesResponseBodyInstancesInstanceClockOptions;
    clusterId?: string;
    cpu?: number;
    cpuOptions?: DescribeInstancesResponseBodyInstancesInstanceCpuOptions;
    creationTime?: string;
    creditSpecification?: string;
    dedicatedHostAttribute?: DescribeInstancesResponseBodyInstancesInstanceDedicatedHostAttribute;
    dedicatedInstanceAttribute?: DescribeInstancesResponseBodyInstancesInstanceDedicatedInstanceAttribute;
    deletionProtection?: boolean;
    deploymentSetGroupNo?: number;
    deploymentSetId?: string;
    description?: string;
    deviceAvailable?: boolean;
    ecsCapacityReservationAttr?: DescribeInstancesResponseBodyInstancesInstanceEcsCapacityReservationAttr;
    eipAddress?: DescribeInstancesResponseBodyInstancesInstanceEipAddress;
    enableNVS?: boolean;
    expiredTime?: string;
    GPUAmount?: number;
    GPUSpec?: string;
    hibernationOptions?: DescribeInstancesResponseBodyInstancesInstanceHibernationOptions;
    hostName?: string;
    hpcClusterId?: string;
    ISP?: string;
    imageId?: string;
    imageOptions?: DescribeInstancesResponseBodyInstancesInstanceImageOptions;
    innerIpAddress?: DescribeInstancesResponseBodyInstancesInstanceInnerIpAddress;
    instanceChargeType?: string;
    instanceId?: string;
    instanceName?: string;
    instanceNetworkType?: string;
    instanceType?: string;
    instanceTypeFamily?: string;
    internetChargeType?: string;
    internetMaxBandwidthIn?: number;
    internetMaxBandwidthOut?: number;
    ioOptimized?: boolean;
    keyPairName?: string;
    localStorageAmount?: number;
    localStorageCapacity?: number;
    memory?: number;
    metadataOptions?: DescribeInstancesResponseBodyInstancesInstanceMetadataOptions;
    networkInterfaces?: DescribeInstancesResponseBodyInstancesInstanceNetworkInterfaces;
    OSName?: string;
    OSNameEn?: string;
    OSType?: string;
    operationLocks?: DescribeInstancesResponseBodyInstancesInstanceOperationLocks;
    privateDnsNameOptions?: DescribeInstancesResponseBodyInstancesInstancePrivateDnsNameOptions;
    publicIpAddress?: DescribeInstancesResponseBodyInstancesInstancePublicIpAddress;
    rdmaIpAddress?: DescribeInstancesResponseBodyInstancesInstanceRdmaIpAddress;
    recyclable?: boolean;
    regionId?: string;
    resourceGroupId?: string;
    saleCycle?: string;
    securityGroupIds?: DescribeInstancesResponseBodyInstancesInstanceSecurityGroupIds;
    serialNumber?: string;
    spotDuration?: number;
    spotInterruptionBehavior?: string;
    spotPriceLimit?: number;
    spotStrategy?: string;
    startTime?: string;
    status?: string;
    stoppedMode?: string;
    tags?: DescribeInstancesResponseBodyInstancesInstanceTags;
    vlanId?: string;
    vpcAttributes?: DescribeInstancesResponseBodyInstancesInstanceVpcAttributes;
    zoneId?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBodyInstances extends $dara.Model {
    instance?: DescribeInstancesResponseBodyInstancesInstance[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeInstancesResponseBody extends $dara.Model {
    instances?: DescribeInstancesResponseBodyInstances;
    /**
     * @remarks
     * A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.
     *
     * @example
     * caeba0bbb2be03f84eb48b699f0a4883
     */
    nextToken?: string;
    /**
     * @remarks
     * The page number.
     *
     * @example
     * 1
     */
    pageNumber?: number;
    /**
     * @remarks
     * The number of entries per page.
     *
     * @example
     * 10
     */
    pageSize?: number;
    /**
     * @remarks
     * The request ID.
     *
     * @example
     * 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E
     */
    requestId?: string;
    /**
     * @remarks
     * The total number of instances queried.
     *
     * >  If you specify the `MaxResults` and `NextToken` request parameters to perform a paged query, the value of the `TotalCount` response parameter is invalid.
     *
     * @example
     * 1
     */
    totalCount?: number;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
