import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MdtSubscriptionConfig extends cdktf.TerraformMetaArguments { /** * A device name from the provider configuration. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#device MdtSubscription#device} */ readonly device?: string; /** * Update notification encoding * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#encoding MdtSubscription#encoding} */ readonly encoding?: string; /** * XPath expression describing the set of objects wanted as part of the subscription * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#filter_xpath MdtSubscription#filter_xpath} */ readonly filterXpath?: string; /** * Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#receivers MdtSubscription#receivers} */ readonly receivers?: MdtSubscriptionReceivers[] | cdktf.IResolvable; /** * The source address for the notifications * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#source_address MdtSubscription#source_address} */ readonly sourceAddress?: string; /** * Network instance name for the VRF * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#source_vrf MdtSubscription#source_vrf} */ readonly sourceVrf?: string; /** * The name of the event stream being subscribed to * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#stream MdtSubscription#stream} */ readonly stream?: string; /** * Unique subscription identifier. * - Range: `0`-`2147483647` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#subscription_id MdtSubscription#subscription_id} */ readonly subscriptionId: number; /** * If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#update_policy_on_change MdtSubscription#update_policy_on_change} */ readonly updatePolicyOnChange?: boolean | cdktf.IResolvable; /** * Period of update notifications in hundredths of a second * - Range: `0`-`4294967295` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#update_policy_periodic MdtSubscription#update_policy_periodic} */ readonly updatePolicyPeriodic?: number; } export interface MdtSubscriptionReceivers { /** * IP address of the receiver * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#address MdtSubscription#address} */ readonly address: string; /** * Network port of the receiver * - Range: `0`-`65535` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#port MdtSubscription#port} */ readonly port: number; /** * Receiver transport protocol. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#protocol MdtSubscription#protocol} */ readonly protocol: string; } export declare function mdtSubscriptionReceiversToTerraform(struct?: MdtSubscriptionReceivers | cdktf.IResolvable): any; export declare function mdtSubscriptionReceiversToHclTerraform(struct?: MdtSubscriptionReceivers | cdktf.IResolvable): any; export declare class MdtSubscriptionReceiversOutputReference 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(): MdtSubscriptionReceivers | cdktf.IResolvable | undefined; set internalValue(value: MdtSubscriptionReceivers | cdktf.IResolvable | undefined); private _address?; get address(): string; set address(value: string); get addressInput(): string; private _port?; get port(): number; set port(value: number); get portInput(): number; private _protocol?; get protocol(): string; set protocol(value: string); get protocolInput(): string; } export declare class MdtSubscriptionReceiversList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MdtSubscriptionReceivers[] | 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): MdtSubscriptionReceiversOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription iosxe_mdt_subscription} */ export declare class MdtSubscription extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_mdt_subscription"; /** * Generates CDKTF code for importing a MdtSubscription 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 MdtSubscription to import * @param importFromId The id of the existing MdtSubscription that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/mdt_subscription#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MdtSubscription 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/mdt_subscription iosxe_mdt_subscription} 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 MdtSubscriptionConfig */ constructor(scope: Construct, id: string, config: MdtSubscriptionConfig); private _device?; get device(): string; set device(value: string); resetDevice(): void; get deviceInput(): string; private _encoding?; get encoding(): string; set encoding(value: string); resetEncoding(): void; get encodingInput(): string; private _filterXpath?; get filterXpath(): string; set filterXpath(value: string); resetFilterXpath(): void; get filterXpathInput(): string; get id(): any; private _receivers; get receivers(): MdtSubscriptionReceiversList; putReceivers(value: MdtSubscriptionReceivers[] | cdktf.IResolvable): void; resetReceivers(): void; get receiversInput(): any; private _sourceAddress?; get sourceAddress(): string; set sourceAddress(value: string); resetSourceAddress(): void; get sourceAddressInput(): string; private _sourceVrf?; get sourceVrf(): string; set sourceVrf(value: string); resetSourceVrf(): void; get sourceVrfInput(): string; private _stream?; get stream(): string; set stream(value: string); resetStream(): void; get streamInput(): string; private _subscriptionId?; get subscriptionId(): number; set subscriptionId(value: number); get subscriptionIdInput(): number; private _updatePolicyOnChange?; get updatePolicyOnChange(): boolean | cdktf.IResolvable; set updatePolicyOnChange(value: boolean | cdktf.IResolvable); resetUpdatePolicyOnChange(): void; get updatePolicyOnChangeInput(): any; private _updatePolicyPeriodic?; get updatePolicyPeriodic(): number; set updatePolicyPeriodic(value: number); resetUpdatePolicyPeriodic(): void; get updatePolicyPeriodicInput(): number; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }