import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Use this data source to query detailed information of ecs key pairs
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 * import * as volcengine from "@volcengine/pulumi";
 *
 * const fooKeyPair = new volcengine.ecs.KeyPair("fooKeyPair", {
 *     keyPairName: "acc-test-key-name",
 *     description: "acc-test",
 * });
 * const fooKeyPairs = volcengine.ecs.getKeyPairsOutput({
 *     keyPairName: fooKeyPair.keyPairName,
 * });
 * ```
 */
export declare function getKeyPairs(args?: GetKeyPairsArgs, opts?: pulumi.InvokeOptions): Promise<GetKeyPairsResult>;
/**
 * A collection of arguments for invoking getKeyPairs.
 */
export interface GetKeyPairsArgs {
    /**
     * The finger print info.
     */
    fingerPrint?: string;
    /**
     * Ids of key pair.
     */
    keyPairIds?: string[];
    /**
     * Name of key pair.
     */
    keyPairName?: string;
    /**
     * Key pair names info.
     */
    keyPairNames?: string[];
    /**
     * A Name Regex of ECS key pairs.
     */
    nameRegex?: string;
    /**
     * File name where to save data source results.
     */
    outputFile?: string;
    /**
     * The project name of the key pair.
     */
    projectName?: string;
    /**
     * Tags.
     */
    tags?: inputs.ecs.GetKeyPairsTag[];
}
/**
 * A collection of values returned by getKeyPairs.
 */
export interface GetKeyPairsResult {
    /**
     * The finger print info.
     */
    readonly fingerPrint?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly keyPairIds?: string[];
    /**
     * The name of key pair.
     */
    readonly keyPairName?: string;
    readonly keyPairNames?: string[];
    /**
     * The target query key pairs info.
     */
    readonly keyPairs: outputs.ecs.GetKeyPairsKeyPair[];
    readonly nameRegex?: string;
    readonly outputFile?: string;
    /**
     * The project name of the key pair.
     */
    readonly projectName?: string;
    /**
     * Tags.
     */
    readonly tags?: outputs.ecs.GetKeyPairsTag[];
    /**
     * The total count of ECS key pair query.
     */
    readonly totalCount: number;
}
/**
 * Use this data source to query detailed information of ecs key pairs
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 * import * as volcengine from "@volcengine/pulumi";
 *
 * const fooKeyPair = new volcengine.ecs.KeyPair("fooKeyPair", {
 *     keyPairName: "acc-test-key-name",
 *     description: "acc-test",
 * });
 * const fooKeyPairs = volcengine.ecs.getKeyPairsOutput({
 *     keyPairName: fooKeyPair.keyPairName,
 * });
 * ```
 */
export declare function getKeyPairsOutput(args?: GetKeyPairsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetKeyPairsResult>;
/**
 * A collection of arguments for invoking getKeyPairs.
 */
export interface GetKeyPairsOutputArgs {
    /**
     * The finger print info.
     */
    fingerPrint?: pulumi.Input<string>;
    /**
     * Ids of key pair.
     */
    keyPairIds?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Name of key pair.
     */
    keyPairName?: pulumi.Input<string>;
    /**
     * Key pair names info.
     */
    keyPairNames?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * A Name Regex of ECS key pairs.
     */
    nameRegex?: pulumi.Input<string>;
    /**
     * File name where to save data source results.
     */
    outputFile?: pulumi.Input<string>;
    /**
     * The project name of the key pair.
     */
    projectName?: pulumi.Input<string>;
    /**
     * Tags.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.ecs.GetKeyPairsTagArgs>[]>;
}
