import type { UseInfiniteQueryResult, UseQueryResult } from 'react-query'; import type { BaseListRequest, GetUseInfiniteQueryOptions, GetUseQueryOptions } from '../../../types'; export interface DescribeInstanceRequest extends BaseListRequest { action?: 'DescribeInstances'; status?: string[]; instances?: string[]; excluded_dir?: number; platform?: string; } export interface DescribeInstancesResponse { action: 'DescribeInstancesResponse'; instance_set: Instance[]; ret_code?: number; total_count: number; } type ResourceProjectInfo = { project_id?: string; project_name?: string; meta?: string; }; export interface Instance { alarm_status: string; broker_host: null; broker_port: null; console_id: string; container_conf: unknown; controller: string; cpu_model_name: string; cpu_oversale_rate: number; cpu_topology: string; create_time: string; description: null; dns_aliases: []; eip: { associate_mode: number; bandwidth: number; eip_addr: string; eip_id: string; nic_id: string; }; eips: { associate_mode: number; bandwidth: number; eip_addr: string; eip_id: string; nic_id: string; }[]; extra: { bandwidth: number; cpu_max: number; cpu_model: string; features: number; gpu: number; gpu_class: number; gpu_pci_nums: string; hypervisor: string; iops: number; ivshmem: []; mem_max: number; nic_mqueue: number; os_disk_encryption: number; os_disk_size: number; read_iops: number; read_throughput: number; throughput: number; sanc_rep_count?: number; }; fence: null; graphics_passwd: string; graphics_port: string; graphics_protocol: string; host_machine: string; hostname: string; instance_class_feature: number; image: { agent_type: string; architecture: string; block_bus: string; default_passwd: string; default_user: string; f_resetpwd: number; features: number; features_supported: { disk_hot_plug: 0 | 1; ipv6_supported: 0 | 1; join_multiple_managed_vxnets: 0 | 1; nic_hot_plug: 0 | 1; reset_fstab: 0 | 1; root_fs_rw_offline: 0 | 1; root_fs_rw_online: 0 | 1; set_keypair: 0 | 1; set_pwd: 0 | 1; user_data: 0 | 1; webssh_supported: 0 | 1; }; image_id: string; image_name: string; image_size: number; os_family: string; platform: string; processor_type: string; provider: string; root_partition_fs: string; root_partition_number: number; ui_type: string; }; instance_category: string; instance_class: number; instance_group: null; instance_id: string; instance_name: string; instance_type: string; keypair_ids: string; lastest_snapshot_time: string; loadbalancer_ids: string; memory_current: number; memory_max: number; owner: string; pitrix_instance_type: string; place_group_name: string; place_group_id: string; platform: string; ratio: number; repl: string; resource_project_info: ResourceProjectInfo[]; root_user_id: string; security_group: { is_default: 0 | 1; security_group_id: string; security_group_name: string; }; security_groups: { is_default: 0 | 1; security_group_id: string; security_group_name: string; }[]; status: string; status_time: string; sub_code: number; support_online?: boolean; tags: { color: string; owner: string; tag_id: string; tag_key: string; tag_name: string; tag_value: string; }[]; transition_status: string; vcpus_current: number; vcpus_max: number; volume_ids: []; volumes: { device: string; size: number; status: string; transition_status: string; volume_id: string; volume_name: string; volume_type: number; }[]; vxnets: { private_ip: string; vxnet_type: number; vxnet_id: string; }[]; webssh: number; zone_id: string; } /** * 请求主机列表 (from request) * @param params {@link DescribeInstanceRequest} * @returns Observable {@link DescribeInstancesResponse} */ export declare const fromRequestDescribeInstances: (params: DescribeInstanceRequest) => import("rxjs").Observable; /** * 请求主机列表 (request) * @param params {@link DescribeInstanceRequest} * @returns Promise {@link DescribeInstancesResponse} */ export declare const requestDescribeInstances: (params: DescribeInstanceRequest) => Promise; /** * useQuery 请求主机列表 * @param params {@link DescribeInstanceRequest} * @param options UseQueryOptions * @returns UseQueryResult {@link DescribeInstancesResponse} */ export declare const useDescribeInstancesQuery: (params: DescribeInstanceRequest, options?: GetUseQueryOptions) => UseQueryResult; /** * useInfiniteQuery 请求主机列表 * @param params {@link DescribeInstanceRequest} * @param options UseInfiniteQueryOptions * @returns UseInfiniteQueryResult {@link DescribeInstancesResponse} */ export declare const useDescribeInstancesInfiniteQuery: (params: DescribeInstanceRequest, options?: GetUseInfiniteQueryOptions) => UseInfiniteQueryResult; export {};