import { ExtendedLocation, FlowLog, SubResource, Subnet } from 'types/index.js'; export type VirtualNetworkListResult = { value: VirtualNetwork[]; nextLink: string; }; export type VirtualNetwork = { etag: string; extendedLocation: ExtendedLocation; id: string; location: string; name: string; properties: { addressSpace: AddressSpace; bgpCommunities: VirtualNetworkBgpCommunities; ddosProtectionPlan: SubResource; dhcpOptions: DhcpOptions; enableDdosProtection: boolean; enableVmProtection: boolean; encryption: VirtualNetworkEncryption; flowLogs: FlowLog[]; flowTimeoutInMinutes: number; ipAllocations: SubResource[]; provisioningState: string; resourceGuid: string; subnets: Subnet[]; virtualNetworkPeerings: VirtualNetworkPeering[]; }; tags: Record; type: string; }; export type AddressSpace = { addressPrefixes: string[]; }; export type VirtualNetworkBgpCommunities = { regionalCommunity: string; virtualNetworkCommunity: string; }; export type DhcpOptions = { dnsServers: string[]; }; export type VirtualNetworkEncryption = { enabled: boolean; enforcement: string; }; export type VirtualNetworkPeering = { etag: string; id: string; name: string; properties: { allowForwardedTraffic: boolean; allowGatewayTransit: boolean; allowVirtualNetworkAccess: boolean; doNotVerifyRemoteGateways: boolean; peeringState: string; peeringSyncLevel: string; provisioningState: string; remoteAddressSpace: AddressSpace; remoteBgpCommunities: VirtualNetworkBgpCommunities; remoteVirtualNetwork: SubResource; remoteVirtualNetworkAddressSpace: AddressSpace; remoteVirtualNetworkEncryption: VirtualNetworkEncryption; resourceGuid: string; useRemoteGateways: boolean; }; type: string; };