import { z } from "zod"; export declare const VpnProviderSchema: z.ZodEnum<{ fortinet: "fortinet"; ipsec: "ipsec"; wireguard: "wireguard"; }>; export type VpnProvider = z.infer; export declare const isForticlientCiphertext: (value: string) => boolean; export declare const WireguardVpnConfigSchema: z.ZodObject<{ provider: z.ZodLiteral<"wireguard">; config: z.ZodString; autoConnect: z.ZodDefault>; }, z.core.$strip>; export declare const FortinetVpnConfigSchema: z.ZodObject<{ provider: z.ZodLiteral<"fortinet">; server: z.ZodString; port: z.ZodDefault>; username: z.ZodString; password: z.ZodString; trustedCert: z.ZodOptional; realm: z.ZodOptional; autoConnect: z.ZodDefault>; }, z.core.$strip>; export declare const IpsecVpnConfigSchema: z.ZodObject<{ provider: z.ZodLiteral<"ipsec">; server: z.ZodString; presharedKey: z.ZodString; localId: z.ZodOptional; remoteId: z.ZodOptional; username: z.ZodOptional; password: z.ZodOptional; ikeVersion: z.ZodDefault>; pfs: z.ZodDefault>; dhGroup: z.ZodDefault>; aggressive: z.ZodDefault>; routedNetworks: z.ZodDefault; autoConnect: z.ZodDefault>; }, z.core.$strip>; export declare const VpnConfigSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ provider: z.ZodLiteral<"wireguard">; config: z.ZodString; autoConnect: z.ZodDefault>; }, z.core.$strip>, z.ZodObject<{ provider: z.ZodLiteral<"fortinet">; server: z.ZodString; port: z.ZodDefault>; username: z.ZodString; password: z.ZodString; trustedCert: z.ZodOptional; realm: z.ZodOptional; autoConnect: z.ZodDefault>; }, z.core.$strip>, z.ZodObject<{ provider: z.ZodLiteral<"ipsec">; server: z.ZodString; presharedKey: z.ZodString; localId: z.ZodOptional; remoteId: z.ZodOptional; username: z.ZodOptional; password: z.ZodOptional; ikeVersion: z.ZodDefault>; pfs: z.ZodDefault>; dhGroup: z.ZodDefault>; aggressive: z.ZodDefault>; routedNetworks: z.ZodDefault; autoConnect: z.ZodDefault>; }, z.core.$strip>], "provider">; export type WireguardVpnConfig = z.infer; export type FortinetVpnConfig = z.infer; export type IpsecVpnConfig = z.infer; export type VpnConfig = z.infer; export declare const VpnStateSchema: z.ZodEnum<{ connected: "connected"; connecting: "connecting"; disconnected: "disconnected"; failed: "failed"; unavailable: "unavailable"; }>; export type VpnState = z.infer; export declare const VpnLinkSchema: z.ZodObject<{ id: z.ZodString; provider: z.ZodEnum<{ fortinet: "fortinet"; ipsec: "ipsec"; wireguard: "wireguard"; }>; state: z.ZodEnum<{ connected: "connected"; connecting: "connecting"; disconnected: "disconnected"; failed: "failed"; unavailable: "unavailable"; }>; gateway: z.ZodOptional; interface: z.ZodOptional; address: z.ZodOptional; routes: z.ZodDefault>; dns: z.ZodDefault>; since: z.ZodOptional; autoConnect: z.ZodBoolean; detail: z.ZodOptional; }, z.core.$strip>; export type VpnLink = z.infer; export declare const VpnListSchema: z.ZodObject<{ links: z.ZodArray; state: z.ZodEnum<{ connected: "connected"; connecting: "connecting"; disconnected: "disconnected"; failed: "failed"; unavailable: "unavailable"; }>; gateway: z.ZodOptional; interface: z.ZodOptional; address: z.ZodOptional; routes: z.ZodDefault>; dns: z.ZodDefault>; since: z.ZodOptional; autoConnect: z.ZodBoolean; detail: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>; export declare const VpnConnectInputSchema: z.ZodObject<{ id: z.ZodString; otp: z.ZodOptional; }, z.core.$strip>; export declare const VpnIdParamSchema: z.ZodObject<{ id: z.ZodString; }, z.core.$strip>; export declare const ForticlientImportInputSchema: z.ZodObject<{ xml: z.ZodString; }, z.core.$strip>; export declare const ForticlientConnectionSchema: z.ZodObject<{ id: z.ZodString; label: z.ZodString; provider: z.ZodEnum<{ fortinet: "fortinet"; ipsec: "ipsec"; wireguard: "wireguard"; }>; server: z.ZodString; port: z.ZodNumber; username: z.ZodOptional; description: z.ZodOptional; localId: z.ZodOptional; aggressive: z.ZodOptional; pfs: z.ZodOptional; dhGroup: z.ZodOptional; needs: z.ZodArray; }, z.core.$strip>; export type ForticlientConnection = z.infer; export declare const ForticlientImportSchema: z.ZodObject<{ connections: z.ZodArray; server: z.ZodString; port: z.ZodNumber; username: z.ZodOptional; description: z.ZodOptional; localId: z.ZodOptional; aggressive: z.ZodOptional; pfs: z.ZodOptional; dhGroup: z.ZodOptional; needs: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>; //# sourceMappingURL=vpn.d.ts.map