import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ArpConfig 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/arp#delete_mode Arp#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/arp#device Arp#device} */ readonly device?: string; /** * Maximum learn entry limit * - Range: `255`-`512000` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#entry_learn Arp#entry_learn} */ readonly entryLearn?: number; /** * Specify the number of IP addresses to resolve * - Range: `1`-`2147483647` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#incomplete_entries Arp#incomplete_entries} */ readonly incompleteEntries?: number; /** * Specify ARP acl to be applied * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_filters Arp#inspection_filters} */ readonly inspectionFilters?: ArpInspectionFilters[] | cdktf.IResolvable; /** * Number of entries for log buffer * - Range: `0`-`1024` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_log_buffer_entries Arp#inspection_log_buffer_entries} */ readonly inspectionLogBufferEntries?: number; /** * Number of entries for log buffer * - Range: `0`-`1024` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_log_buffer_logs_entries Arp#inspection_log_buffer_logs_entries} */ readonly inspectionLogBufferLogsEntries?: number; /** * Interval for controlling logging rate * - Range: `0`-`86400` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_log_buffer_logs_interval Arp#inspection_log_buffer_logs_interval} */ readonly inspectionLogBufferLogsInterval?: number; /** * Allow 0.0.0.0 sender IP address * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_validate_allow_zeros Arp#inspection_validate_allow_zeros} */ readonly inspectionValidateAllowZeros?: boolean | cdktf.IResolvable; /** * Validate destination MAC address * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_validate_dst_mac Arp#inspection_validate_dst_mac} */ readonly inspectionValidateDstMac?: boolean | cdktf.IResolvable; /** * Validate IP addresses * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_validate_ip Arp#inspection_validate_ip} */ readonly inspectionValidateIp?: boolean | cdktf.IResolvable; /** * Validate source MAC address * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_validate_src_mac Arp#inspection_validate_src_mac} */ readonly inspectionValidateSrcMac?: boolean | cdktf.IResolvable; /** * Enable/Disable ARP Inspection on vlans(Deprecated) * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#inspection_vlan Arp#inspection_vlan} */ readonly inspectionVlan?: string; /** * Disable proxy ARP on all interfaces * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#proxy_disable Arp#proxy_disable} */ readonly proxyDisable?: boolean | cdktf.IResolvable; } export interface ArpInspectionFiltersVlans { /** * Apply the ACL statically * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#static Arp#static} */ readonly static?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#vlan_range Arp#vlan_range} */ readonly vlanRange: string; } export declare function arpInspectionFiltersVlansToTerraform(struct?: ArpInspectionFiltersVlans | cdktf.IResolvable): any; export declare function arpInspectionFiltersVlansToHclTerraform(struct?: ArpInspectionFiltersVlans | cdktf.IResolvable): any; export declare class ArpInspectionFiltersVlansOutputReference 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(): ArpInspectionFiltersVlans | cdktf.IResolvable | undefined; set internalValue(value: ArpInspectionFiltersVlans | cdktf.IResolvable | undefined); private _static?; get static(): boolean | cdktf.IResolvable; set static(value: boolean | cdktf.IResolvable); resetStatic(): void; get staticInput(): any; private _vlanRange?; get vlanRange(): string; set vlanRange(value: string); get vlanRangeInput(): string; } export declare class ArpInspectionFiltersVlansList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ArpInspectionFiltersVlans[] | 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): ArpInspectionFiltersVlansOutputReference; } export interface ArpInspectionFilters { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#name Arp#name} */ readonly name: string; /** * Vlans to apply the filter * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#vlans Arp#vlans} */ readonly vlans?: ArpInspectionFiltersVlans[] | cdktf.IResolvable; } export declare function arpInspectionFiltersToTerraform(struct?: ArpInspectionFilters | cdktf.IResolvable): any; export declare function arpInspectionFiltersToHclTerraform(struct?: ArpInspectionFilters | cdktf.IResolvable): any; export declare class ArpInspectionFiltersOutputReference 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(): ArpInspectionFilters | cdktf.IResolvable | undefined; set internalValue(value: ArpInspectionFilters | cdktf.IResolvable | undefined); private _name?; get name(): string; set name(value: string); get nameInput(): string; private _vlans; get vlans(): ArpInspectionFiltersVlansList; putVlans(value: ArpInspectionFiltersVlans[] | cdktf.IResolvable): void; resetVlans(): void; get vlansInput(): any; } export declare class ArpInspectionFiltersList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ArpInspectionFilters[] | 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): ArpInspectionFiltersOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp iosxe_arp} */ export declare class Arp extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_arp"; /** * Generates CDKTF code for importing a Arp 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 Arp to import * @param importFromId The id of the existing Arp that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/arp#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the Arp 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/arp iosxe_arp} 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 ArpConfig = {} */ constructor(scope: Construct, id: string, config?: ArpConfig); 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; private _entryLearn?; get entryLearn(): number; set entryLearn(value: number); resetEntryLearn(): void; get entryLearnInput(): number; get id(): any; private _incompleteEntries?; get incompleteEntries(): number; set incompleteEntries(value: number); resetIncompleteEntries(): void; get incompleteEntriesInput(): number; private _inspectionFilters; get inspectionFilters(): ArpInspectionFiltersList; putInspectionFilters(value: ArpInspectionFilters[] | cdktf.IResolvable): void; resetInspectionFilters(): void; get inspectionFiltersInput(): any; private _inspectionLogBufferEntries?; get inspectionLogBufferEntries(): number; set inspectionLogBufferEntries(value: number); resetInspectionLogBufferEntries(): void; get inspectionLogBufferEntriesInput(): number; private _inspectionLogBufferLogsEntries?; get inspectionLogBufferLogsEntries(): number; set inspectionLogBufferLogsEntries(value: number); resetInspectionLogBufferLogsEntries(): void; get inspectionLogBufferLogsEntriesInput(): number; private _inspectionLogBufferLogsInterval?; get inspectionLogBufferLogsInterval(): number; set inspectionLogBufferLogsInterval(value: number); resetInspectionLogBufferLogsInterval(): void; get inspectionLogBufferLogsIntervalInput(): number; private _inspectionValidateAllowZeros?; get inspectionValidateAllowZeros(): boolean | cdktf.IResolvable; set inspectionValidateAllowZeros(value: boolean | cdktf.IResolvable); resetInspectionValidateAllowZeros(): void; get inspectionValidateAllowZerosInput(): any; private _inspectionValidateDstMac?; get inspectionValidateDstMac(): boolean | cdktf.IResolvable; set inspectionValidateDstMac(value: boolean | cdktf.IResolvable); resetInspectionValidateDstMac(): void; get inspectionValidateDstMacInput(): any; private _inspectionValidateIp?; get inspectionValidateIp(): boolean | cdktf.IResolvable; set inspectionValidateIp(value: boolean | cdktf.IResolvable); resetInspectionValidateIp(): void; get inspectionValidateIpInput(): any; private _inspectionValidateSrcMac?; get inspectionValidateSrcMac(): boolean | cdktf.IResolvable; set inspectionValidateSrcMac(value: boolean | cdktf.IResolvable); resetInspectionValidateSrcMac(): void; get inspectionValidateSrcMacInput(): any; private _inspectionVlan?; get inspectionVlan(): string; set inspectionVlan(value: string); resetInspectionVlan(): void; get inspectionVlanInput(): string; private _proxyDisable?; get proxyDisable(): boolean | cdktf.IResolvable; set proxyDisable(value: boolean | cdktf.IResolvable); resetProxyDisable(): void; get proxyDisableInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }