# encoding: utf-8 # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. module Azure::KeyVault::V7_1_preview module Models # # The key create parameters. # class KeyCreateParameters include MsRestAzure # @return [JsonWebKeyType] The type of key to create. For valid values, # see JsonWebKeyType. Possible values include: 'EC', 'EC-HSM', 'RSA', # 'RSA-HSM', 'oct' attr_accessor :kty # @return [Integer] The key size in bits. For example: 2048, 3072, or # 4096 for RSA. attr_accessor :key_size # @return [Array] attr_accessor :key_ops # @return [KeyAttributes] attr_accessor :key_attributes # @return [Hash{String => String}] Application specific metadata in the # form of key-value pairs. attr_accessor :tags # @return [JsonWebKeyCurveName] Elliptic curve name. For valid values, # see JsonWebKeyCurveName. Possible values include: 'P-256', 'P-384', # 'P-521', 'P-256K' attr_accessor :curve # # Mapper for KeyCreateParameters class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'KeyCreateParameters', type: { name: 'Composite', class_name: 'KeyCreateParameters', model_properties: { kty: { client_side_validation: true, required: true, serialized_name: 'kty', constraints: { MinLength: 1 }, type: { name: 'String' } }, key_size: { client_side_validation: true, required: false, serialized_name: 'key_size', type: { name: 'Number' } }, key_ops: { client_side_validation: true, required: false, serialized_name: 'key_ops', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'JsonWebKeyOperationElementType', type: { name: 'String' } } } }, key_attributes: { client_side_validation: true, required: false, serialized_name: 'attributes', type: { name: 'Composite', class_name: 'KeyAttributes' } }, tags: { client_side_validation: true, required: false, serialized_name: 'tags', type: { name: 'Dictionary', value: { client_side_validation: true, required: false, serialized_name: 'StringElementType', type: { name: 'String' } } } }, curve: { client_side_validation: true, required: false, serialized_name: 'crv', type: { name: 'String' } } } } } end end end end