import * as pulumi from "@pulumi/pulumi"; /** * **This resource uses a Beta API.** Creates an SSH key in a Public Cloud project. * * > SSH keys are **immutable** — both `name` and `publicKey` force resource replacement if changed. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as ovh from "@ovhcloud/pulumi-ovh"; * * const myKey = new ovh.CloudSSHKey("my_key", { * serviceName: "aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", * name: "my-deploy-key", * publicKey: "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIExample user@host", * }); * ``` */ export declare class CloudSSHKey extends pulumi.CustomResource { /** * Get an existing CloudSSHKey resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: CloudSSHKeyState, opts?: pulumi.CustomResourceOptions): CloudSSHKey; /** * Returns true if the given object is an instance of CloudSSHKey. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is CloudSSHKey; /** * Creation date of the SSH key (RFC 3339 format). */ readonly createdAt: pulumi.Output; /** * SSH key name. Must be unique within the project. Used as the resource identifier. **Changing this value recreates the resource.** */ readonly name: pulumi.Output; /** * SSH public key content (e.g. the contents of `~/.ssh/id_ed25519.pub`). **Changing this value recreates the resource.** */ readonly publicKey: pulumi.Output; /** * The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used. **Changing this value recreates the resource.** */ readonly serviceName: pulumi.Output; /** * Last update date of the SSH key (RFC 3339 format). */ readonly updatedAt: pulumi.Output; /** * Create a CloudSSHKey resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: CloudSSHKeyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering CloudSSHKey resources. */ export interface CloudSSHKeyState { /** * Creation date of the SSH key (RFC 3339 format). */ createdAt?: pulumi.Input; /** * SSH key name. Must be unique within the project. Used as the resource identifier. **Changing this value recreates the resource.** */ name?: pulumi.Input; /** * SSH public key content (e.g. the contents of `~/.ssh/id_ed25519.pub`). **Changing this value recreates the resource.** */ publicKey?: pulumi.Input; /** * The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used. **Changing this value recreates the resource.** */ serviceName?: pulumi.Input; /** * Last update date of the SSH key (RFC 3339 format). */ updatedAt?: pulumi.Input; } /** * The set of arguments for constructing a CloudSSHKey resource. */ export interface CloudSSHKeyArgs { /** * SSH key name. Must be unique within the project. Used as the resource identifier. **Changing this value recreates the resource.** */ name?: pulumi.Input; /** * SSH public key content (e.g. the contents of `~/.ssh/id_ed25519.pub`). **Changing this value recreates the resource.** */ publicKey: pulumi.Input; /** * The id of the public cloud project. If omitted, the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used. **Changing this value recreates the resource.** */ serviceName?: pulumi.Input; }