import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ServiceTemplateConfig extends cdktf.TerraformMetaArguments { /** * Enter a value between 1 and 1073741823 * - Range: `1`-`1073741823` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#absolute_timer ServiceTemplate#absolute_timer} */ readonly absoluteTimer?: number; /** * Access list to be applied * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#access_groups ServiceTemplate#access_groups} */ readonly accessGroups?: ServiceTemplateAccessGroups[] | cdktf.IResolvable; /** * Enter a description * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#description ServiceTemplate#description} */ readonly description?: 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/service_template#device ServiceTemplate#device} */ readonly device?: string; /** * pre-authentication * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#dns_acl_preauth ServiceTemplate#dns_acl_preauth} */ readonly dnsAclPreauth?: string; /** * Enter a value between 1 and 65535 * - Range: `1`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#inactivity_timer ServiceTemplate#inactivity_timer} */ readonly inactivityTimer?: number; /** * ARP probe * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#inactivity_timer_probe ServiceTemplate#inactivity_timer_probe} */ readonly inactivityTimerProbe?: boolean | cdktf.IResolvable; /** * Interface template to be applied * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#interface_templates ServiceTemplate#interface_templates} */ readonly interfaceTemplates?: ServiceTemplateInterfaceTemplates[] | cdktf.IResolvable; /** * Set the link security policy * - Choices: `must-not-secure`, `must-secure`, `should-secure` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#linksec_policy ServiceTemplate#linksec_policy} */ readonly linksecPolicy?: string; /** * mdns policy to be applied * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#mdns_service_policy ServiceTemplate#mdns_service_policy} */ readonly mdnsServicePolicy?: string; /** * Specify a template name (maximum 48 characters) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#name ServiceTemplate#name} */ readonly name: string; /** * Append client Mac Address in redirect URL * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#redirect_append_client_mac ServiceTemplate#redirect_append_client_mac} */ readonly redirectAppendClientMac?: string; /** * Append switch Mac Address in redirect URL * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#redirect_append_switch_mac ServiceTemplate#redirect_append_switch_mac} */ readonly redirectAppendSwitchMac?: string; /** * Specify a valid URL * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#redirect_url ServiceTemplate#redirect_url} */ readonly redirectUrl?: string; /** * Specify the access list name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#redirect_url_match_acl ServiceTemplate#redirect_url_match_acl} */ readonly redirectUrlMatchAcl?: string; /** * * - Choices: `one-time-redirect`, `redirect-on-no-match` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#redirect_url_match_action ServiceTemplate#redirect_url_match_action} */ readonly redirectUrlMatchAction?: string; /** * Configure input Qos policy * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#service_policy_qos_input ServiceTemplate#service_policy_qos_input} */ readonly servicePolicyQosInput?: string; /** * Configure output Qos policy * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#service_policy_qos_output ServiceTemplate#service_policy_qos_output} */ readonly servicePolicyQosOutput?: string; /** * SGT tag * - Range: `2`-`65519` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#sgt ServiceTemplate#sgt} */ readonly sgt?: number; /** * tag name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#tags ServiceTemplate#tags} */ readonly tags?: ServiceTemplateTags[] | cdktf.IResolvable; /** * tunnel profile name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#tunnel_capwap_name ServiceTemplate#tunnel_capwap_name} */ readonly tunnelCapwapName?: string; /** * Vlan to be applied * - Range: `1`-`4094` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#vlan ServiceTemplate#vlan} */ readonly vlan?: number; /** * Vnid to be applied * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#vnid ServiceTemplate#vnid} */ readonly vnid?: string; /** * Critical voice vlan * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#voice_vlan ServiceTemplate#voice_vlan} */ readonly voiceVlan?: boolean | cdktf.IResolvable; } export interface ServiceTemplateAccessGroups { /** * Specify the access list name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#name ServiceTemplate#name} */ readonly name: string; } export declare function serviceTemplateAccessGroupsToTerraform(struct?: ServiceTemplateAccessGroups | cdktf.IResolvable): any; export declare function serviceTemplateAccessGroupsToHclTerraform(struct?: ServiceTemplateAccessGroups | cdktf.IResolvable): any; export declare class ServiceTemplateAccessGroupsOutputReference 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(): ServiceTemplateAccessGroups | cdktf.IResolvable | undefined; set internalValue(value: ServiceTemplateAccessGroups | cdktf.IResolvable | undefined); private _name?; get name(): string; set name(value: string); get nameInput(): string; } export declare class ServiceTemplateAccessGroupsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ServiceTemplateAccessGroups[] | 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): ServiceTemplateAccessGroupsOutputReference; } export interface ServiceTemplateInterfaceTemplates { /** * Enter name of interface template * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#name ServiceTemplate#name} */ readonly name: string; } export declare function serviceTemplateInterfaceTemplatesToTerraform(struct?: ServiceTemplateInterfaceTemplates | cdktf.IResolvable): any; export declare function serviceTemplateInterfaceTemplatesToHclTerraform(struct?: ServiceTemplateInterfaceTemplates | cdktf.IResolvable): any; export declare class ServiceTemplateInterfaceTemplatesOutputReference 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(): ServiceTemplateInterfaceTemplates | cdktf.IResolvable | undefined; set internalValue(value: ServiceTemplateInterfaceTemplates | cdktf.IResolvable | undefined); private _name?; get name(): string; set name(value: string); get nameInput(): string; } export declare class ServiceTemplateInterfaceTemplatesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ServiceTemplateInterfaceTemplates[] | 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): ServiceTemplateInterfaceTemplatesOutputReference; } export interface ServiceTemplateTags { /** * Specify the Tag name * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#name ServiceTemplate#name} */ readonly name: string; } export declare function serviceTemplateTagsToTerraform(struct?: ServiceTemplateTags | cdktf.IResolvable): any; export declare function serviceTemplateTagsToHclTerraform(struct?: ServiceTemplateTags | cdktf.IResolvable): any; export declare class ServiceTemplateTagsOutputReference 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(): ServiceTemplateTags | cdktf.IResolvable | undefined; set internalValue(value: ServiceTemplateTags | cdktf.IResolvable | undefined); private _name?; get name(): string; set name(value: string); get nameInput(): string; } export declare class ServiceTemplateTagsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ServiceTemplateTags[] | 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): ServiceTemplateTagsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template iosxe_service_template} */ export declare class ServiceTemplate extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_service_template"; /** * Generates CDKTF code for importing a ServiceTemplate 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 ServiceTemplate to import * @param importFromId The id of the existing ServiceTemplate that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/service_template#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ServiceTemplate 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/service_template iosxe_service_template} 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 ServiceTemplateConfig */ constructor(scope: Construct, id: string, config: ServiceTemplateConfig); private _absoluteTimer?; get absoluteTimer(): number; set absoluteTimer(value: number); resetAbsoluteTimer(): void; get absoluteTimerInput(): number; private _accessGroups; get accessGroups(): ServiceTemplateAccessGroupsList; putAccessGroups(value: ServiceTemplateAccessGroups[] | cdktf.IResolvable): void; resetAccessGroups(): void; get accessGroupsInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _device?; get device(): string; set device(value: string); resetDevice(): void; get deviceInput(): string; private _dnsAclPreauth?; get dnsAclPreauth(): string; set dnsAclPreauth(value: string); resetDnsAclPreauth(): void; get dnsAclPreauthInput(): string; get id(): any; private _inactivityTimer?; get inactivityTimer(): number; set inactivityTimer(value: number); resetInactivityTimer(): void; get inactivityTimerInput(): number; private _inactivityTimerProbe?; get inactivityTimerProbe(): boolean | cdktf.IResolvable; set inactivityTimerProbe(value: boolean | cdktf.IResolvable); resetInactivityTimerProbe(): void; get inactivityTimerProbeInput(): any; private _interfaceTemplates; get interfaceTemplates(): ServiceTemplateInterfaceTemplatesList; putInterfaceTemplates(value: ServiceTemplateInterfaceTemplates[] | cdktf.IResolvable): void; resetInterfaceTemplates(): void; get interfaceTemplatesInput(): any; private _linksecPolicy?; get linksecPolicy(): string; set linksecPolicy(value: string); resetLinksecPolicy(): void; get linksecPolicyInput(): string; private _mdnsServicePolicy?; get mdnsServicePolicy(): string; set mdnsServicePolicy(value: string); resetMdnsServicePolicy(): void; get mdnsServicePolicyInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _redirectAppendClientMac?; get redirectAppendClientMac(): string; set redirectAppendClientMac(value: string); resetRedirectAppendClientMac(): void; get redirectAppendClientMacInput(): string; private _redirectAppendSwitchMac?; get redirectAppendSwitchMac(): string; set redirectAppendSwitchMac(value: string); resetRedirectAppendSwitchMac(): void; get redirectAppendSwitchMacInput(): string; private _redirectUrl?; get redirectUrl(): string; set redirectUrl(value: string); resetRedirectUrl(): void; get redirectUrlInput(): string; private _redirectUrlMatchAcl?; get redirectUrlMatchAcl(): string; set redirectUrlMatchAcl(value: string); resetRedirectUrlMatchAcl(): void; get redirectUrlMatchAclInput(): string; private _redirectUrlMatchAction?; get redirectUrlMatchAction(): string; set redirectUrlMatchAction(value: string); resetRedirectUrlMatchAction(): void; get redirectUrlMatchActionInput(): string; private _servicePolicyQosInput?; get servicePolicyQosInput(): string; set servicePolicyQosInput(value: string); resetServicePolicyQosInput(): void; get servicePolicyQosInputInput(): string; private _servicePolicyQosOutput?; get servicePolicyQosOutput(): string; set servicePolicyQosOutput(value: string); resetServicePolicyQosOutput(): void; get servicePolicyQosOutputInput(): string; private _sgt?; get sgt(): number; set sgt(value: number); resetSgt(): void; get sgtInput(): number; private _tags; get tags(): ServiceTemplateTagsList; putTags(value: ServiceTemplateTags[] | cdktf.IResolvable): void; resetTags(): void; get tagsInput(): any; private _tunnelCapwapName?; get tunnelCapwapName(): string; set tunnelCapwapName(value: string); resetTunnelCapwapName(): void; get tunnelCapwapNameInput(): string; private _vlan?; get vlan(): number; set vlan(value: number); resetVlan(): void; get vlanInput(): number; private _vnid?; get vnid(): string; set vnid(value: string); resetVnid(): void; get vnidInput(): string; private _voiceVlan?; get voiceVlan(): boolean | cdktf.IResolvable; set voiceVlan(value: boolean | cdktf.IResolvable); resetVoiceVlan(): void; get voiceVlanInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }