cloudhsm.d.ts (28723B)
1 import {Request} from '../lib/request'; 2 import {Response} from '../lib/response'; 3 import {AWSError} from '../lib/error'; 4 import {Service} from '../lib/service'; 5 import {ServiceConfigurationOptions} from '../lib/service'; 6 import {ConfigBase as Config} from '../lib/config'; 7 interface Blob {} 8 declare class CloudHSM extends Service { 9 /** 10 * Constructs a service object. This object has one method for each API operation. 11 */ 12 constructor(options?: CloudHSM.Types.ClientConfiguration) 13 config: Config & CloudHSM.Types.ClientConfiguration; 14 /** 15 * Adds or overwrites one or more tags for the specified AWS CloudHSM resource. Each tag consists of a key and a value. Tag keys must be unique to each resource. 16 */ 17 addTagsToResource(params: CloudHSM.Types.AddTagsToResourceRequest, callback?: (err: AWSError, data: CloudHSM.Types.AddTagsToResourceResponse) => void): Request<CloudHSM.Types.AddTagsToResourceResponse, AWSError>; 18 /** 19 * Adds or overwrites one or more tags for the specified AWS CloudHSM resource. Each tag consists of a key and a value. Tag keys must be unique to each resource. 20 */ 21 addTagsToResource(callback?: (err: AWSError, data: CloudHSM.Types.AddTagsToResourceResponse) => void): Request<CloudHSM.Types.AddTagsToResourceResponse, AWSError>; 22 /** 23 * Creates a high-availability partition group. A high-availability partition group is a group of partitions that spans multiple physical HSMs. 24 */ 25 createHapg(params: CloudHSM.Types.CreateHapgRequest, callback?: (err: AWSError, data: CloudHSM.Types.CreateHapgResponse) => void): Request<CloudHSM.Types.CreateHapgResponse, AWSError>; 26 /** 27 * Creates a high-availability partition group. A high-availability partition group is a group of partitions that spans multiple physical HSMs. 28 */ 29 createHapg(callback?: (err: AWSError, data: CloudHSM.Types.CreateHapgResponse) => void): Request<CloudHSM.Types.CreateHapgResponse, AWSError>; 30 /** 31 * Creates an uninitialized HSM instance. There is an upfront fee charged for each HSM instance that you create with the CreateHsm operation. If you accidentally provision an HSM and want to request a refund, delete the instance using the DeleteHsm operation, go to the AWS Support Center, create a new case, and select Account and Billing Support. It can take up to 20 minutes to create and provision an HSM. You can monitor the status of the HSM with the DescribeHsm operation. The HSM is ready to be initialized when the status changes to RUNNING. 32 */ 33 createHsm(params: CloudHSM.Types.CreateHsmRequest, callback?: (err: AWSError, data: CloudHSM.Types.CreateHsmResponse) => void): Request<CloudHSM.Types.CreateHsmResponse, AWSError>; 34 /** 35 * Creates an uninitialized HSM instance. There is an upfront fee charged for each HSM instance that you create with the CreateHsm operation. If you accidentally provision an HSM and want to request a refund, delete the instance using the DeleteHsm operation, go to the AWS Support Center, create a new case, and select Account and Billing Support. It can take up to 20 minutes to create and provision an HSM. You can monitor the status of the HSM with the DescribeHsm operation. The HSM is ready to be initialized when the status changes to RUNNING. 36 */ 37 createHsm(callback?: (err: AWSError, data: CloudHSM.Types.CreateHsmResponse) => void): Request<CloudHSM.Types.CreateHsmResponse, AWSError>; 38 /** 39 * Creates an HSM client. 40 */ 41 createLunaClient(params: CloudHSM.Types.CreateLunaClientRequest, callback?: (err: AWSError, data: CloudHSM.Types.CreateLunaClientResponse) => void): Request<CloudHSM.Types.CreateLunaClientResponse, AWSError>; 42 /** 43 * Creates an HSM client. 44 */ 45 createLunaClient(callback?: (err: AWSError, data: CloudHSM.Types.CreateLunaClientResponse) => void): Request<CloudHSM.Types.CreateLunaClientResponse, AWSError>; 46 /** 47 * Deletes a high-availability partition group. 48 */ 49 deleteHapg(params: CloudHSM.Types.DeleteHapgRequest, callback?: (err: AWSError, data: CloudHSM.Types.DeleteHapgResponse) => void): Request<CloudHSM.Types.DeleteHapgResponse, AWSError>; 50 /** 51 * Deletes a high-availability partition group. 52 */ 53 deleteHapg(callback?: (err: AWSError, data: CloudHSM.Types.DeleteHapgResponse) => void): Request<CloudHSM.Types.DeleteHapgResponse, AWSError>; 54 /** 55 * Deletes an HSM. After completion, this operation cannot be undone and your key material cannot be recovered. 56 */ 57 deleteHsm(params: CloudHSM.Types.DeleteHsmRequest, callback?: (err: AWSError, data: CloudHSM.Types.DeleteHsmResponse) => void): Request<CloudHSM.Types.DeleteHsmResponse, AWSError>; 58 /** 59 * Deletes an HSM. After completion, this operation cannot be undone and your key material cannot be recovered. 60 */ 61 deleteHsm(callback?: (err: AWSError, data: CloudHSM.Types.DeleteHsmResponse) => void): Request<CloudHSM.Types.DeleteHsmResponse, AWSError>; 62 /** 63 * Deletes a client. 64 */ 65 deleteLunaClient(params: CloudHSM.Types.DeleteLunaClientRequest, callback?: (err: AWSError, data: CloudHSM.Types.DeleteLunaClientResponse) => void): Request<CloudHSM.Types.DeleteLunaClientResponse, AWSError>; 66 /** 67 * Deletes a client. 68 */ 69 deleteLunaClient(callback?: (err: AWSError, data: CloudHSM.Types.DeleteLunaClientResponse) => void): Request<CloudHSM.Types.DeleteLunaClientResponse, AWSError>; 70 /** 71 * Retrieves information about a high-availability partition group. 72 */ 73 describeHapg(params: CloudHSM.Types.DescribeHapgRequest, callback?: (err: AWSError, data: CloudHSM.Types.DescribeHapgResponse) => void): Request<CloudHSM.Types.DescribeHapgResponse, AWSError>; 74 /** 75 * Retrieves information about a high-availability partition group. 76 */ 77 describeHapg(callback?: (err: AWSError, data: CloudHSM.Types.DescribeHapgResponse) => void): Request<CloudHSM.Types.DescribeHapgResponse, AWSError>; 78 /** 79 * Retrieves information about an HSM. You can identify the HSM by its ARN or its serial number. 80 */ 81 describeHsm(params: CloudHSM.Types.DescribeHsmRequest, callback?: (err: AWSError, data: CloudHSM.Types.DescribeHsmResponse) => void): Request<CloudHSM.Types.DescribeHsmResponse, AWSError>; 82 /** 83 * Retrieves information about an HSM. You can identify the HSM by its ARN or its serial number. 84 */ 85 describeHsm(callback?: (err: AWSError, data: CloudHSM.Types.DescribeHsmResponse) => void): Request<CloudHSM.Types.DescribeHsmResponse, AWSError>; 86 /** 87 * Retrieves information about an HSM client. 88 */ 89 describeLunaClient(params: CloudHSM.Types.DescribeLunaClientRequest, callback?: (err: AWSError, data: CloudHSM.Types.DescribeLunaClientResponse) => void): Request<CloudHSM.Types.DescribeLunaClientResponse, AWSError>; 90 /** 91 * Retrieves information about an HSM client. 92 */ 93 describeLunaClient(callback?: (err: AWSError, data: CloudHSM.Types.DescribeLunaClientResponse) => void): Request<CloudHSM.Types.DescribeLunaClientResponse, AWSError>; 94 /** 95 * Gets the configuration files necessary to connect to all high availability partition groups the client is associated with. 96 */ 97 getConfig(params: CloudHSM.Types.GetConfigRequest, callback?: (err: AWSError, data: CloudHSM.Types.GetConfigResponse) => void): Request<CloudHSM.Types.GetConfigResponse, AWSError>; 98 /** 99 * Gets the configuration files necessary to connect to all high availability partition groups the client is associated with. 100 */ 101 getConfig(callback?: (err: AWSError, data: CloudHSM.Types.GetConfigResponse) => void): Request<CloudHSM.Types.GetConfigResponse, AWSError>; 102 /** 103 * Lists the Availability Zones that have available AWS CloudHSM capacity. 104 */ 105 listAvailableZones(params: CloudHSM.Types.ListAvailableZonesRequest, callback?: (err: AWSError, data: CloudHSM.Types.ListAvailableZonesResponse) => void): Request<CloudHSM.Types.ListAvailableZonesResponse, AWSError>; 106 /** 107 * Lists the Availability Zones that have available AWS CloudHSM capacity. 108 */ 109 listAvailableZones(callback?: (err: AWSError, data: CloudHSM.Types.ListAvailableZonesResponse) => void): Request<CloudHSM.Types.ListAvailableZonesResponse, AWSError>; 110 /** 111 * Lists the high-availability partition groups for the account. This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListHapgs to retrieve the next set of items. 112 */ 113 listHapgs(params: CloudHSM.Types.ListHapgsRequest, callback?: (err: AWSError, data: CloudHSM.Types.ListHapgsResponse) => void): Request<CloudHSM.Types.ListHapgsResponse, AWSError>; 114 /** 115 * Lists the high-availability partition groups for the account. This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListHapgs to retrieve the next set of items. 116 */ 117 listHapgs(callback?: (err: AWSError, data: CloudHSM.Types.ListHapgsResponse) => void): Request<CloudHSM.Types.ListHapgsResponse, AWSError>; 118 /** 119 * Retrieves the identifiers of all of the HSMs provisioned for the current customer. This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListHsms to retrieve the next set of items. 120 */ 121 listHsms(params: CloudHSM.Types.ListHsmsRequest, callback?: (err: AWSError, data: CloudHSM.Types.ListHsmsResponse) => void): Request<CloudHSM.Types.ListHsmsResponse, AWSError>; 122 /** 123 * Retrieves the identifiers of all of the HSMs provisioned for the current customer. This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListHsms to retrieve the next set of items. 124 */ 125 listHsms(callback?: (err: AWSError, data: CloudHSM.Types.ListHsmsResponse) => void): Request<CloudHSM.Types.ListHsmsResponse, AWSError>; 126 /** 127 * Lists all of the clients. This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListLunaClients to retrieve the next set of items. 128 */ 129 listLunaClients(params: CloudHSM.Types.ListLunaClientsRequest, callback?: (err: AWSError, data: CloudHSM.Types.ListLunaClientsResponse) => void): Request<CloudHSM.Types.ListLunaClientsResponse, AWSError>; 130 /** 131 * Lists all of the clients. This operation supports pagination with the use of the NextToken member. If more results are available, the NextToken member of the response contains a token that you pass in the next call to ListLunaClients to retrieve the next set of items. 132 */ 133 listLunaClients(callback?: (err: AWSError, data: CloudHSM.Types.ListLunaClientsResponse) => void): Request<CloudHSM.Types.ListLunaClientsResponse, AWSError>; 134 /** 135 * Returns a list of all tags for the specified AWS CloudHSM resource. 136 */ 137 listTagsForResource(params: CloudHSM.Types.ListTagsForResourceRequest, callback?: (err: AWSError, data: CloudHSM.Types.ListTagsForResourceResponse) => void): Request<CloudHSM.Types.ListTagsForResourceResponse, AWSError>; 138 /** 139 * Returns a list of all tags for the specified AWS CloudHSM resource. 140 */ 141 listTagsForResource(callback?: (err: AWSError, data: CloudHSM.Types.ListTagsForResourceResponse) => void): Request<CloudHSM.Types.ListTagsForResourceResponse, AWSError>; 142 /** 143 * Modifies an existing high-availability partition group. 144 */ 145 modifyHapg(params: CloudHSM.Types.ModifyHapgRequest, callback?: (err: AWSError, data: CloudHSM.Types.ModifyHapgResponse) => void): Request<CloudHSM.Types.ModifyHapgResponse, AWSError>; 146 /** 147 * Modifies an existing high-availability partition group. 148 */ 149 modifyHapg(callback?: (err: AWSError, data: CloudHSM.Types.ModifyHapgResponse) => void): Request<CloudHSM.Types.ModifyHapgResponse, AWSError>; 150 /** 151 * Modifies an HSM. This operation can result in the HSM being offline for up to 15 minutes while the AWS CloudHSM service is reconfigured. If you are modifying a production HSM, you should ensure that your AWS CloudHSM service is configured for high availability, and consider executing this operation during a maintenance window. 152 */ 153 modifyHsm(params: CloudHSM.Types.ModifyHsmRequest, callback?: (err: AWSError, data: CloudHSM.Types.ModifyHsmResponse) => void): Request<CloudHSM.Types.ModifyHsmResponse, AWSError>; 154 /** 155 * Modifies an HSM. This operation can result in the HSM being offline for up to 15 minutes while the AWS CloudHSM service is reconfigured. If you are modifying a production HSM, you should ensure that your AWS CloudHSM service is configured for high availability, and consider executing this operation during a maintenance window. 156 */ 157 modifyHsm(callback?: (err: AWSError, data: CloudHSM.Types.ModifyHsmResponse) => void): Request<CloudHSM.Types.ModifyHsmResponse, AWSError>; 158 /** 159 * Modifies the certificate used by the client. This action can potentially start a workflow to install the new certificate on the client's HSMs. 160 */ 161 modifyLunaClient(params: CloudHSM.Types.ModifyLunaClientRequest, callback?: (err: AWSError, data: CloudHSM.Types.ModifyLunaClientResponse) => void): Request<CloudHSM.Types.ModifyLunaClientResponse, AWSError>; 162 /** 163 * Modifies the certificate used by the client. This action can potentially start a workflow to install the new certificate on the client's HSMs. 164 */ 165 modifyLunaClient(callback?: (err: AWSError, data: CloudHSM.Types.ModifyLunaClientResponse) => void): Request<CloudHSM.Types.ModifyLunaClientResponse, AWSError>; 166 /** 167 * Removes one or more tags from the specified AWS CloudHSM resource. To remove a tag, specify only the tag key to remove (not the value). To overwrite the value for an existing tag, use AddTagsToResource. 168 */ 169 removeTagsFromResource(params: CloudHSM.Types.RemoveTagsFromResourceRequest, callback?: (err: AWSError, data: CloudHSM.Types.RemoveTagsFromResourceResponse) => void): Request<CloudHSM.Types.RemoveTagsFromResourceResponse, AWSError>; 170 /** 171 * Removes one or more tags from the specified AWS CloudHSM resource. To remove a tag, specify only the tag key to remove (not the value). To overwrite the value for an existing tag, use AddTagsToResource. 172 */ 173 removeTagsFromResource(callback?: (err: AWSError, data: CloudHSM.Types.RemoveTagsFromResourceResponse) => void): Request<CloudHSM.Types.RemoveTagsFromResourceResponse, AWSError>; 174 } 175 declare namespace CloudHSM.Types { 176 export type AZ = string; 177 export type AZList = AZ[]; 178 export interface AddTagsToResourceRequest { 179 /** 180 * The Amazon Resource Name (ARN) of the AWS CloudHSM resource to tag. 181 */ 182 ResourceArn: String; 183 /** 184 * One or more tags. 185 */ 186 TagList: TagList; 187 } 188 export interface AddTagsToResourceResponse { 189 /** 190 * The status of the operation. 191 */ 192 Status: String; 193 } 194 export type Boolean = boolean; 195 export type Certificate = string; 196 export type CertificateFingerprint = string; 197 export type ClientArn = string; 198 export type ClientLabel = string; 199 export type ClientList = ClientArn[]; 200 export type ClientToken = string; 201 export type ClientVersion = "5.1"|"5.3"|string; 202 export type CloudHsmObjectState = "READY"|"UPDATING"|"DEGRADED"|string; 203 export interface CreateHapgRequest { 204 /** 205 * The label of the new high-availability partition group. 206 */ 207 Label: Label; 208 } 209 export interface CreateHapgResponse { 210 /** 211 * The ARN of the high-availability partition group. 212 */ 213 HapgArn?: HapgArn; 214 } 215 export interface CreateHsmRequest { 216 /** 217 * The identifier of the subnet in your VPC in which to place the HSM. 218 */ 219 SubnetId: SubnetId; 220 /** 221 * The SSH public key to install on the HSM. 222 */ 223 SshKey: SshKey; 224 /** 225 * The IP address to assign to the HSM's ENI. If an IP address is not specified, an IP address will be randomly chosen from the CIDR range of the subnet. 226 */ 227 EniIp?: IpAddress; 228 /** 229 * The ARN of an IAM role to enable the AWS CloudHSM service to allocate an ENI on your behalf. 230 */ 231 IamRoleArn: IamRoleArn; 232 /** 233 * The external ID from IamRoleArn, if present. 234 */ 235 ExternalId?: ExternalId; 236 SubscriptionType: SubscriptionType; 237 /** 238 * A user-defined token to ensure idempotence. Subsequent calls to this operation with the same token will be ignored. 239 */ 240 ClientToken?: ClientToken; 241 /** 242 * The IP address for the syslog monitoring server. The AWS CloudHSM service only supports one syslog monitoring server. 243 */ 244 SyslogIp?: IpAddress; 245 } 246 export interface CreateHsmResponse { 247 /** 248 * The ARN of the HSM. 249 */ 250 HsmArn?: HsmArn; 251 } 252 export interface CreateLunaClientRequest { 253 /** 254 * The label for the client. 255 */ 256 Label?: ClientLabel; 257 /** 258 * The contents of a Base64-Encoded X.509 v3 certificate to be installed on the HSMs used by this client. 259 */ 260 Certificate: Certificate; 261 } 262 export interface CreateLunaClientResponse { 263 /** 264 * The ARN of the client. 265 */ 266 ClientArn?: ClientArn; 267 } 268 export interface DeleteHapgRequest { 269 /** 270 * The ARN of the high-availability partition group to delete. 271 */ 272 HapgArn: HapgArn; 273 } 274 export interface DeleteHapgResponse { 275 /** 276 * The status of the action. 277 */ 278 Status: String; 279 } 280 export interface DeleteHsmRequest { 281 /** 282 * The ARN of the HSM to delete. 283 */ 284 HsmArn: HsmArn; 285 } 286 export interface DeleteHsmResponse { 287 /** 288 * The status of the operation. 289 */ 290 Status: String; 291 } 292 export interface DeleteLunaClientRequest { 293 /** 294 * The ARN of the client to delete. 295 */ 296 ClientArn: ClientArn; 297 } 298 export interface DeleteLunaClientResponse { 299 /** 300 * The status of the action. 301 */ 302 Status: String; 303 } 304 export interface DescribeHapgRequest { 305 /** 306 * The ARN of the high-availability partition group to describe. 307 */ 308 HapgArn: HapgArn; 309 } 310 export interface DescribeHapgResponse { 311 /** 312 * The ARN of the high-availability partition group. 313 */ 314 HapgArn?: HapgArn; 315 /** 316 * The serial number of the high-availability partition group. 317 */ 318 HapgSerial?: String; 319 HsmsLastActionFailed?: HsmList; 320 HsmsPendingDeletion?: HsmList; 321 HsmsPendingRegistration?: HsmList; 322 /** 323 * The label for the high-availability partition group. 324 */ 325 Label?: Label; 326 /** 327 * The date and time the high-availability partition group was last modified. 328 */ 329 LastModifiedTimestamp?: Timestamp; 330 /** 331 * The list of partition serial numbers that belong to the high-availability partition group. 332 */ 333 PartitionSerialList?: PartitionSerialList; 334 /** 335 * The state of the high-availability partition group. 336 */ 337 State?: CloudHsmObjectState; 338 } 339 export interface DescribeHsmRequest { 340 /** 341 * The ARN of the HSM. Either the HsmArn or the SerialNumber parameter must be specified. 342 */ 343 HsmArn?: HsmArn; 344 /** 345 * The serial number of the HSM. Either the HsmArn or the HsmSerialNumber parameter must be specified. 346 */ 347 HsmSerialNumber?: HsmSerialNumber; 348 } 349 export interface DescribeHsmResponse { 350 /** 351 * The ARN of the HSM. 352 */ 353 HsmArn?: HsmArn; 354 /** 355 * The status of the HSM. 356 */ 357 Status?: HsmStatus; 358 /** 359 * Contains additional information about the status of the HSM. 360 */ 361 StatusDetails?: String; 362 /** 363 * The Availability Zone that the HSM is in. 364 */ 365 AvailabilityZone?: AZ; 366 /** 367 * The identifier of the elastic network interface (ENI) attached to the HSM. 368 */ 369 EniId?: EniId; 370 /** 371 * The IP address assigned to the HSM's ENI. 372 */ 373 EniIp?: IpAddress; 374 SubscriptionType?: SubscriptionType; 375 /** 376 * The subscription start date. 377 */ 378 SubscriptionStartDate?: Timestamp; 379 /** 380 * The subscription end date. 381 */ 382 SubscriptionEndDate?: Timestamp; 383 /** 384 * The identifier of the VPC that the HSM is in. 385 */ 386 VpcId?: VpcId; 387 /** 388 * The identifier of the subnet that the HSM is in. 389 */ 390 SubnetId?: SubnetId; 391 /** 392 * The ARN of the IAM role assigned to the HSM. 393 */ 394 IamRoleArn?: IamRoleArn; 395 /** 396 * The serial number of the HSM. 397 */ 398 SerialNumber?: HsmSerialNumber; 399 /** 400 * The name of the HSM vendor. 401 */ 402 VendorName?: String; 403 /** 404 * The HSM model type. 405 */ 406 HsmType?: String; 407 /** 408 * The HSM software version. 409 */ 410 SoftwareVersion?: String; 411 /** 412 * The public SSH key. 413 */ 414 SshPublicKey?: SshKey; 415 /** 416 * The date and time that the SSH key was last updated. 417 */ 418 SshKeyLastUpdated?: Timestamp; 419 /** 420 * The URI of the certificate server. 421 */ 422 ServerCertUri?: String; 423 /** 424 * The date and time that the server certificate was last updated. 425 */ 426 ServerCertLastUpdated?: Timestamp; 427 /** 428 * The list of partitions on the HSM. 429 */ 430 Partitions?: PartitionList; 431 } 432 export interface DescribeLunaClientRequest { 433 /** 434 * The ARN of the client. 435 */ 436 ClientArn?: ClientArn; 437 /** 438 * The certificate fingerprint. 439 */ 440 CertificateFingerprint?: CertificateFingerprint; 441 } 442 export interface DescribeLunaClientResponse { 443 /** 444 * The ARN of the client. 445 */ 446 ClientArn?: ClientArn; 447 /** 448 * The certificate installed on the HSMs used by this client. 449 */ 450 Certificate?: Certificate; 451 /** 452 * The certificate fingerprint. 453 */ 454 CertificateFingerprint?: CertificateFingerprint; 455 /** 456 * The date and time the client was last modified. 457 */ 458 LastModifiedTimestamp?: Timestamp; 459 /** 460 * The label of the client. 461 */ 462 Label?: Label; 463 } 464 export type EniId = string; 465 export type ExternalId = string; 466 export interface GetConfigRequest { 467 /** 468 * The ARN of the client. 469 */ 470 ClientArn: ClientArn; 471 /** 472 * The client version. 473 */ 474 ClientVersion: ClientVersion; 475 /** 476 * A list of ARNs that identify the high-availability partition groups that are associated with the client. 477 */ 478 HapgList: HapgList; 479 } 480 export interface GetConfigResponse { 481 /** 482 * The type of credentials. 483 */ 484 ConfigType?: String; 485 /** 486 * The chrystoki.conf configuration file. 487 */ 488 ConfigFile?: String; 489 /** 490 * The certificate file containing the server.pem files of the HSMs. 491 */ 492 ConfigCred?: String; 493 } 494 export type HapgArn = string; 495 export type HapgList = HapgArn[]; 496 export type HsmArn = string; 497 export type HsmList = HsmArn[]; 498 export type HsmSerialNumber = string; 499 export type HsmStatus = "PENDING"|"RUNNING"|"UPDATING"|"SUSPENDED"|"TERMINATING"|"TERMINATED"|"DEGRADED"|string; 500 export type IamRoleArn = string; 501 export type IpAddress = string; 502 export type Label = string; 503 export interface ListAvailableZonesRequest { 504 } 505 export interface ListAvailableZonesResponse { 506 /** 507 * The list of Availability Zones that have available AWS CloudHSM capacity. 508 */ 509 AZList?: AZList; 510 } 511 export interface ListHapgsRequest { 512 /** 513 * The NextToken value from a previous call to ListHapgs. Pass null if this is the first call. 514 */ 515 NextToken?: PaginationToken; 516 } 517 export interface ListHapgsResponse { 518 /** 519 * The list of high-availability partition groups. 520 */ 521 HapgList: HapgList; 522 /** 523 * If not null, more results are available. Pass this value to ListHapgs to retrieve the next set of items. 524 */ 525 NextToken?: PaginationToken; 526 } 527 export interface ListHsmsRequest { 528 /** 529 * The NextToken value from a previous call to ListHsms. Pass null if this is the first call. 530 */ 531 NextToken?: PaginationToken; 532 } 533 export interface ListHsmsResponse { 534 /** 535 * The list of ARNs that identify the HSMs. 536 */ 537 HsmList?: HsmList; 538 /** 539 * If not null, more results are available. Pass this value to ListHsms to retrieve the next set of items. 540 */ 541 NextToken?: PaginationToken; 542 } 543 export interface ListLunaClientsRequest { 544 /** 545 * The NextToken value from a previous call to ListLunaClients. Pass null if this is the first call. 546 */ 547 NextToken?: PaginationToken; 548 } 549 export interface ListLunaClientsResponse { 550 /** 551 * The list of clients. 552 */ 553 ClientList: ClientList; 554 /** 555 * If not null, more results are available. Pass this to ListLunaClients to retrieve the next set of items. 556 */ 557 NextToken?: PaginationToken; 558 } 559 export interface ListTagsForResourceRequest { 560 /** 561 * The Amazon Resource Name (ARN) of the AWS CloudHSM resource. 562 */ 563 ResourceArn: String; 564 } 565 export interface ListTagsForResourceResponse { 566 /** 567 * One or more tags. 568 */ 569 TagList: TagList; 570 } 571 export interface ModifyHapgRequest { 572 /** 573 * The ARN of the high-availability partition group to modify. 574 */ 575 HapgArn: HapgArn; 576 /** 577 * The new label for the high-availability partition group. 578 */ 579 Label?: Label; 580 /** 581 * The list of partition serial numbers to make members of the high-availability partition group. 582 */ 583 PartitionSerialList?: PartitionSerialList; 584 } 585 export interface ModifyHapgResponse { 586 /** 587 * The ARN of the high-availability partition group. 588 */ 589 HapgArn?: HapgArn; 590 } 591 export interface ModifyHsmRequest { 592 /** 593 * The ARN of the HSM to modify. 594 */ 595 HsmArn: HsmArn; 596 /** 597 * The new identifier of the subnet that the HSM is in. The new subnet must be in the same Availability Zone as the current subnet. 598 */ 599 SubnetId?: SubnetId; 600 /** 601 * The new IP address for the elastic network interface (ENI) attached to the HSM. If the HSM is moved to a different subnet, and an IP address is not specified, an IP address will be randomly chosen from the CIDR range of the new subnet. 602 */ 603 EniIp?: IpAddress; 604 /** 605 * The new IAM role ARN. 606 */ 607 IamRoleArn?: IamRoleArn; 608 /** 609 * The new external ID. 610 */ 611 ExternalId?: ExternalId; 612 /** 613 * The new IP address for the syslog monitoring server. The AWS CloudHSM service only supports one syslog monitoring server. 614 */ 615 SyslogIp?: IpAddress; 616 } 617 export interface ModifyHsmResponse { 618 /** 619 * The ARN of the HSM. 620 */ 621 HsmArn?: HsmArn; 622 } 623 export interface ModifyLunaClientRequest { 624 /** 625 * The ARN of the client. 626 */ 627 ClientArn: ClientArn; 628 /** 629 * The new certificate for the client. 630 */ 631 Certificate: Certificate; 632 } 633 export interface ModifyLunaClientResponse { 634 /** 635 * The ARN of the client. 636 */ 637 ClientArn?: ClientArn; 638 } 639 export type PaginationToken = string; 640 export type PartitionArn = string; 641 export type PartitionList = PartitionArn[]; 642 export type PartitionSerial = string; 643 export type PartitionSerialList = PartitionSerial[]; 644 export interface RemoveTagsFromResourceRequest { 645 /** 646 * The Amazon Resource Name (ARN) of the AWS CloudHSM resource. 647 */ 648 ResourceArn: String; 649 /** 650 * The tag key or keys to remove. Specify only the tag key to remove (not the value). To overwrite the value for an existing tag, use AddTagsToResource. 651 */ 652 TagKeyList: TagKeyList; 653 } 654 export interface RemoveTagsFromResourceResponse { 655 /** 656 * The status of the operation. 657 */ 658 Status: String; 659 } 660 export type SshKey = string; 661 export type String = string; 662 export type SubnetId = string; 663 export type SubscriptionType = "PRODUCTION"|string; 664 export interface Tag { 665 /** 666 * The key of the tag. 667 */ 668 Key: TagKey; 669 /** 670 * The value of the tag. 671 */ 672 Value: TagValue; 673 } 674 export type TagKey = string; 675 export type TagKeyList = TagKey[]; 676 export type TagList = Tag[]; 677 export type TagValue = string; 678 export type Timestamp = string; 679 export type VpcId = string; 680 /** 681 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version. 682 */ 683 export type apiVersion = "2014-05-30"|"latest"|string; 684 export interface ClientApiVersions { 685 /** 686 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version. 687 */ 688 apiVersion?: apiVersion; 689 } 690 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions; 691 } 692 export = CloudHSM;