import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MulticastConfig 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/multicast#delete_mode Multicast#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/multicast#device Multicast#device} */ readonly device?: string; /** * RPF across equal-cost paths * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/multicast#multipath Multicast#multipath} */ readonly multipath?: boolean | cdktf.IResolvable; /** * Per-(source, group) load sharing algorithm selection * - Choices: `basic`, `next-hop-based` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/multicast#multipath_s_g_hash Multicast#multipath_s_g_hash} */ readonly multipathSGHash?: string; /** * Select VPN Routing/Forwarding instance * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/multicast#vrfs Multicast#vrfs} */ readonly vrfs?: MulticastVrfs[] | cdktf.IResolvable; } export interface MulticastVrfs { /** * RPF across equal-cost paths * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/multicast#multipath Multicast#multipath} */ readonly multipath?: boolean | cdktf.IResolvable; /** * Per-(source, group) load sharing algorithm selection * - Choices: `basic`, `next-hop-based` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/multicast#multipath_s_g_hash Multicast#multipath_s_g_hash} */ readonly multipathSGHash?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/multicast#vrf Multicast#vrf} */ readonly vrf: string; } export declare function multicastVrfsToTerraform(struct?: MulticastVrfs | cdktf.IResolvable): any; export declare function multicastVrfsToHclTerraform(struct?: MulticastVrfs | cdktf.IResolvable): any; export declare class MulticastVrfsOutputReference 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(): MulticastVrfs | cdktf.IResolvable | undefined; set internalValue(value: MulticastVrfs | cdktf.IResolvable | undefined); private _multipath?; get multipath(): boolean | cdktf.IResolvable; set multipath(value: boolean | cdktf.IResolvable); resetMultipath(): void; get multipathInput(): any; private _multipathSGHash?; get multipathSGHash(): string; set multipathSGHash(value: string); resetMultipathSGHash(): void; get multipathSGHashInput(): string; private _vrf?; get vrf(): string; set vrf(value: string); get vrfInput(): string; } export declare class MulticastVrfsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: MulticastVrfs[] | 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): MulticastVrfsOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/multicast iosxe_multicast} */ export declare class Multicast extends cdktf.TerraformResource { static readonly tfResourceType = "iosxe_multicast"; /** * Generates CDKTF code for importing a Multicast 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 Multicast to import * @param importFromId The id of the existing Multicast that should be imported. Refer to the {@link https://registry.terraform.io/providers/ciscodevnet/iosxe/0.15.0/docs/resources/multicast#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the Multicast 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/multicast iosxe_multicast} 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 MulticastConfig = {} */ constructor(scope: Construct, id: string, config?: MulticastConfig); 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 _multipath?; get multipath(): boolean | cdktf.IResolvable; set multipath(value: boolean | cdktf.IResolvable); resetMultipath(): void; get multipathInput(): any; private _multipathSGHash?; get multipathSGHash(): string; set multipathSGHash(value: string); resetMultipathSGHash(): void; get multipathSGHashInput(): string; private _vrfs; get vrfs(): MulticastVrfsList; putVrfs(value: MulticastVrfs[] | cdktf.IResolvable): void; resetVrfs(): void; get vrfsInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }