import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface CryptoPkiConfig extends cdktf.TerraformMetaArguments { /** * Configure behavior when deleting/destroying the resource. Either delete the entire object (YANG container) being managed, or only delete the individual resource attributes configured explicitly and leave everything else as-is. Default value is `all`. * - Choices: `all`, `attributes` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#delete_mode CryptoPki#delete_mode} */ readonly deleteMode?: string; /** * A device name from the provider configuration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#device CryptoPki#device} */ readonly device?: string; /** * Define a CA trustpoint * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#trustpoints CryptoPki#trustpoints} */ readonly trustpoints?: CryptoPkiTrustpoints[] | cdktf.IResolvable; } export interface CryptoPkiTrustpoints { /** * Registration Authority mode * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#enrollment_mode_ra CryptoPki#enrollment_mode_ra} */ readonly enrollmentModeRa?: boolean | cdktf.IResolvable; /** * Enroll via pkcs12 * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#enrollment_pkcs12 CryptoPki#enrollment_pkcs12} */ readonly enrollmentPkcs12?: boolean | cdktf.IResolvable; /** * Generate a Self Signed Certificate * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#enrollment_selfsigned CryptoPki#enrollment_selfsigned} */ readonly enrollmentSelfsigned?: boolean | cdktf.IResolvable; /** * Enroll via the terminal (cut-and-paste) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#enrollment_terminal CryptoPki#enrollment_terminal} */ readonly enrollmentTerminal?: boolean | cdktf.IResolvable; /** * Hash algorithm * - Choices: `md5`, `sha1`, `sha256`, `sha384`, `sha512` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#hash CryptoPki#hash} */ readonly hash?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#id CryptoPki#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id: string; /** * Revocation checking options * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#revocation_check CryptoPki#revocation_check} */ readonly revocationCheck?: string[]; /** * RSA keypair label * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#rsakeypair CryptoPki#rsakeypair} */ readonly rsakeypair?: string; /** * Interface used as source address * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#source_interface CryptoPki#source_interface} */ readonly sourceInterface?: string; /** * Subject Name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#subject_name CryptoPki#subject_name} */ readonly subjectName?: string; /** * Certificate Usage * - Choices: `ike`, `ssl-client`, `ssl-server` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#usage CryptoPki#usage} */ readonly usage?: string; } export declare function cryptoPkiTrustpointsToTerraform(struct?: CryptoPkiTrustpoints | cdktf.IResolvable): any; export declare function cryptoPkiTrustpointsToHclTerraform(struct?: CryptoPkiTrustpoints | cdktf.IResolvable): any; export declare class CryptoPkiTrustpointsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): CryptoPkiTrustpoints | cdktf.IResolvable | undefined; set internalValue(value: CryptoPkiTrustpoints | cdktf.IResolvable | undefined); private _enrollmentModeRa?; get enrollmentModeRa(): boolean | cdktf.IResolvable; set enrollmentModeRa(value: boolean | cdktf.IResolvable); resetEnrollmentModeRa(): void; get enrollmentModeRaInput(): any; private _enrollmentPkcs12?; get enrollmentPkcs12(): boolean | cdktf.IResolvable; set enrollmentPkcs12(value: boolean | cdktf.IResolvable); resetEnrollmentPkcs12(): void; get enrollmentPkcs12Input(): any; private _enrollmentSelfsigned?; get enrollmentSelfsigned(): boolean | cdktf.IResolvable; set enrollmentSelfsigned(value: boolean | cdktf.IResolvable); resetEnrollmentSelfsigned(): void; get enrollmentSelfsignedInput(): any; private _enrollmentTerminal?; get enrollmentTerminal(): boolean | cdktf.IResolvable; set enrollmentTerminal(value: boolean | cdktf.IResolvable); resetEnrollmentTerminal(): void; get enrollmentTerminalInput(): any; private _hash?; get hash(): string; set hash(value: string); resetHash(): void; get hashInput(): string; private _id?; get id(): string; set id(value: string); get idInput(): string; private _revocationCheck?; get revocationCheck(): string[]; set revocationCheck(value: string[]); resetRevocationCheck(): void; get revocationCheckInput(): string[]; private _rsakeypair?; get rsakeypair(): string; set rsakeypair(value: string); resetRsakeypair(): void; get rsakeypairInput(): string; private _sourceInterface?; get sourceInterface(): string; set sourceInterface(value: string); resetSourceInterface(): void; get sourceInterfaceInput(): string; private _subjectName?; get subjectName(): string; set subjectName(value: string); resetSubjectName(): void; get subjectNameInput(): string; private _usage?; get usage(): string; set usage(value: string); resetUsage(): void; get usageInput(): string; } export declare class CryptoPkiTrustpointsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: CryptoPkiTrustpoints[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): CryptoPkiTrustpointsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki iosxe_crypto_pki} */ export declare class CryptoPki extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_crypto_pki"; /** * Generates CDKTF code for importing a CryptoPki resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the CryptoPki to import * @param importFromId The id of the existing CryptoPki that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the CryptoPki to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/crypto_pki iosxe_crypto_pki} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options CryptoPkiConfig = {} */ constructor(scope: Construct, id: string, config?: CryptoPkiConfig); private _deleteMode?; get deleteMode(): string; set deleteMode(value: string); resetDeleteMode(): void; get deleteModeInput(): string; private _device?; get device(): string; set device(value: string); resetDevice(): void; get deviceInput(): string; get id(): any; private _trustpoints; get trustpoints(): CryptoPkiTrustpointsList; putTrustpoints(value: CryptoPkiTrustpoints[] | cdktf.IResolvable): void; resetTrustpoints(): void; get trustpointsInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }