import * as pulumi from "@pulumi/pulumi"; /** * Creates a Service Key in an OVHcloud KMS. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as ovh from "@ovhcloud/pulumi-ovh"; * * const keySymetric = new ovh.okms.ServiceKey("key_symetric", { * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", * name: "key_oct", * type: "oct", * size: 256, * operations: [ * "encrypt", * "decrypt", * ], * }); * const keyRsa = new ovh.okms.ServiceKey("key_rsa", { * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", * name: "key_rsa", * type: "RSA", * size: 2048, * operations: [ * "sign", * "verify", * ], * }); * const keyEcdsa = new ovh.okms.ServiceKey("key_ecdsa", { * okmsId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", * name: "key_ecdsa", * type: "EC", * curve: "P-256", * operations: [ * "sign", * "verify", * ], * }); * ``` */ export declare class ServiceKey extends pulumi.CustomResource { /** * Get an existing ServiceKey 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?: ServiceKeyState, opts?: pulumi.CustomResourceOptions): ServiceKey; /** * Returns true if the given object is an instance of ServiceKey. 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 ServiceKey; /** * Context of the key */ readonly context: pulumi.Output; /** * Creation time of the key */ readonly createdAt: pulumi.Output; /** * Curve type for Elliptic Curve (EC) keys */ readonly curve: pulumi.Output; /** * Key deactivation reason */ readonly deactivationReason: pulumi.Output; /** * Key name */ readonly name: pulumi.Output; /** * Okms ID */ readonly okmsId: pulumi.Output; /** * The operations for which the key is intended to be used */ readonly operations: pulumi.Output; /** * Size of the key to be created */ readonly size: pulumi.Output; /** * State of the key */ readonly state: pulumi.Output; /** * Type of the key to be created */ readonly type: pulumi.Output; /** * Create a ServiceKey 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: ServiceKeyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ServiceKey resources. */ export interface ServiceKeyState { /** * Context of the key */ context?: pulumi.Input; /** * Creation time of the key */ createdAt?: pulumi.Input; /** * Curve type for Elliptic Curve (EC) keys */ curve?: pulumi.Input; /** * Key deactivation reason */ deactivationReason?: pulumi.Input; /** * Key name */ name?: pulumi.Input; /** * Okms ID */ okmsId?: pulumi.Input; /** * The operations for which the key is intended to be used */ operations?: pulumi.Input[]>; /** * Size of the key to be created */ size?: pulumi.Input; /** * State of the key */ state?: pulumi.Input; /** * Type of the key to be created */ type?: pulumi.Input; } /** * The set of arguments for constructing a ServiceKey resource. */ export interface ServiceKeyArgs { /** * Context of the key */ context?: pulumi.Input; /** * Curve type for Elliptic Curve (EC) keys */ curve?: pulumi.Input; /** * Key name */ name?: pulumi.Input; /** * Okms ID */ okmsId: pulumi.Input; /** * The operations for which the key is intended to be used */ operations: pulumi.Input[]>; /** * Size of the key to be created */ size?: pulumi.Input; /** * Type of the key to be created */ type: pulumi.Input; }