import { z } from "zod"; export declare const WslEnvironmentSchema: z.ZodObject<{ distro: z.ZodString; }, z.core.$strip>; export type WslEnvironment = z.infer; export declare const MachineIdSchema: z.ZodString; export declare const derivedMachineId: (card: string) => string; export declare const isDerivedMachineId: (machineId: string) => boolean; export declare const MachineIdentitySchema: z.ZodObject<{ machineId: z.ZodOptional; environment: z.ZodOptional; }, z.core.$strip>; export type MachineIdentity = z.infer; export declare const PeerEnrollmentRequestSchema: z.ZodObject<{ machineId: z.ZodOptional; environment: z.ZodOptional; }, z.core.$strip>; export type PeerEnrollmentRequest = MachineIdentity; export declare const UPKEEP_SKIPPED_SHOWN = 10; export declare const DeviceUpkeepSchema: z.ZodObject<{ at: z.ZodNumber; found: z.ZodRecord; fixed: z.ZodRecord; skipped: z.ZodArray>; }, z.core.$strip>; export type DeviceUpkeep = z.infer; export declare const DeviceFactsSchema: z.ZodObject<{ machineId: z.ZodOptional; os: z.ZodString; arch: z.ZodString; shell: z.ZodString; home: z.ZodString; roots: z.ZodArray; engine: z.ZodOptional>; hostname: z.ZodOptional; wsl: z.ZodOptional>; wslDistros: z.ZodOptional>; links: z.ZodOptional; }, z.core.$strip>>; features: z.ZodOptional>; icOutOfDate: z.ZodOptional; upkeep: z.ZodOptional; fixed: z.ZodRecord; skipped: z.ZodArray>; }, z.core.$strip>>; previousExit: z.ZodOptional; ic: z.ZodOptional; }, z.core.$strip>>; icOverrides: z.ZodOptional>; intenticOs: z.ZodOptional>; }, z.core.$strip>; export type DeviceFacts = z.infer; export declare const DeviceFeatureSchema: z.ZodEnum<{ "background-prepare": "background-prepare"; keyring: "keyring"; "loopback-catch": "loopback-catch"; programs: "programs"; "project-delivery": "project-delivery"; "reachable-ways-back": "reachable-ways-back"; "reshape-later": "reshape-later"; "rollback-to": "rollback-to"; "set-shape": "set-shape"; sleep: "sleep"; }>; export type DeviceFeature = z.infer; export declare const DEVICE_FEATURE_RESHAPE_LATER: DeviceFeature; export declare const DEVICE_FEATURE_SET_SHAPE: DeviceFeature; export declare const DEVICE_FEATURE_ROLLBACK_TO: DeviceFeature; export declare const DEVICE_FEATURE_LOOPBACK_CATCH: DeviceFeature; export declare const DEVICE_FEATURE_BACKGROUND_PREPARE: DeviceFeature; export declare const DEVICE_FEATURE_PROJECT_DELIVERY: DeviceFeature; export declare const DEVICE_FEATURE_PROGRAMS: DeviceFeature; export declare const DEVICE_FEATURE_KEYRING: DeviceFeature; export declare const DEVICE_FEATURE_SLEEP: DeviceFeature; export declare const DEVICE_FEATURE_REACHABLE_WAYS_BACK: DeviceFeature; export declare const IcFeaturesAnswerSchema: z.ZodObject<{ features: z.ZodArray; }, z.core.$strip>; export declare const deviceFeatures: (facts: Pick | undefined) => DeviceFeature[]; export declare const deviceSupports: (facts: Pick | undefined, feature: DeviceFeature) => boolean; export declare const WSL_SYSTEM_DISTROS: ReadonlySet; export declare const userDistrosOf: (facts: Pick | undefined) => string[]; export declare const wslPathOf: (windowsPath: string) => string | undefined; export declare const windowsPathOf: (distro: string, linuxPath: string) => string; export declare const HOST_NATIVE_ENVIRONMENT = "native"; export declare const environmentKeyOf: (facts: Pick) => string; export interface HostConnection { readonly card: string; readonly environment: string; } export declare const hostConnectionKey: (card: string, environment: string) => string; export declare const parseHostConnection: (key: string) => HostConnection; export declare const HostEnvironmentSchema: z.ZodObject<{ key: z.ZodString; machineId: z.ZodOptional; online: z.ZodBoolean; version: z.ZodOptional; lastSeen: z.ZodOptional; facts: z.ZodOptional; os: z.ZodString; arch: z.ZodString; shell: z.ZodString; home: z.ZodString; roots: z.ZodArray; engine: z.ZodOptional>; hostname: z.ZodOptional; wsl: z.ZodOptional>; wslDistros: z.ZodOptional>; links: z.ZodOptional; }, z.core.$strip>>; features: z.ZodOptional>; icOutOfDate: z.ZodOptional; upkeep: z.ZodOptional; fixed: z.ZodRecord; skipped: z.ZodArray>; }, z.core.$strip>>; previousExit: z.ZodOptional; ic: z.ZodOptional; }, z.core.$strip>>; icOverrides: z.ZodOptional>; intenticOs: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>; export type HostEnvironment = z.infer; export type MachinePresence = { readonly kind: "online"; } | { readonly kind: "partly"; readonly awake: readonly string[]; } | { readonly kind: "offline"; }; export declare const machinePresence: (environments: readonly Pick[]) => MachinePresence; export declare const environmentName: (key: string) => string; export declare const HostSummarySchema: z.ZodObject<{ id: z.ZodString; card: z.ZodOptional; platform: z.ZodString; environments: z.ZodArray; online: z.ZodBoolean; version: z.ZodOptional; lastSeen: z.ZodOptional; facts: z.ZodOptional; os: z.ZodString; arch: z.ZodString; shell: z.ZodString; home: z.ZodString; roots: z.ZodArray; engine: z.ZodOptional>; hostname: z.ZodOptional; wsl: z.ZodOptional>; wslDistros: z.ZodOptional>; links: z.ZodOptional; }, z.core.$strip>>; features: z.ZodOptional>; icOutOfDate: z.ZodOptional; upkeep: z.ZodOptional; fixed: z.ZodRecord; skipped: z.ZodArray>; }, z.core.$strip>>; previousExit: z.ZodOptional; ic: z.ZodOptional; }, z.core.$strip>>; icOverrides: z.ZodOptional>; intenticOs: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>; online: z.ZodBoolean; version: z.ZodOptional; lastSeen: z.ZodOptional; facts: z.ZodOptional; os: z.ZodString; arch: z.ZodString; shell: z.ZodString; home: z.ZodString; roots: z.ZodArray; engine: z.ZodOptional>; hostname: z.ZodOptional; wsl: z.ZodOptional>; wslDistros: z.ZodOptional>; links: z.ZodOptional; }, z.core.$strip>>; features: z.ZodOptional>; icOutOfDate: z.ZodOptional; upkeep: z.ZodOptional; fixed: z.ZodRecord; skipped: z.ZodArray>; }, z.core.$strip>>; previousExit: z.ZodOptional; ic: z.ZodOptional; }, z.core.$strip>>; icOverrides: z.ZodOptional>; intenticOs: z.ZodOptional>; }, z.core.$strip>>; manages: z.ZodOptional; }, z.core.$strip>; export type HostSummary = z.infer; export declare const HostsListSchema: z.ZodObject<{ hosts: z.ZodArray; platform: z.ZodString; environments: z.ZodArray; online: z.ZodBoolean; version: z.ZodOptional; lastSeen: z.ZodOptional; facts: z.ZodOptional; os: z.ZodString; arch: z.ZodString; shell: z.ZodString; home: z.ZodString; roots: z.ZodArray; engine: z.ZodOptional>; hostname: z.ZodOptional; wsl: z.ZodOptional>; wslDistros: z.ZodOptional>; links: z.ZodOptional; }, z.core.$strip>>; features: z.ZodOptional>; icOutOfDate: z.ZodOptional; upkeep: z.ZodOptional; fixed: z.ZodRecord; skipped: z.ZodArray>; }, z.core.$strip>>; previousExit: z.ZodOptional; ic: z.ZodOptional; }, z.core.$strip>>; icOverrides: z.ZodOptional>; intenticOs: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>>; online: z.ZodBoolean; version: z.ZodOptional; lastSeen: z.ZodOptional; facts: z.ZodOptional; os: z.ZodString; arch: z.ZodString; shell: z.ZodString; home: z.ZodString; roots: z.ZodArray; engine: z.ZodOptional>; hostname: z.ZodOptional; wsl: z.ZodOptional>; wslDistros: z.ZodOptional>; links: z.ZodOptional; }, z.core.$strip>>; features: z.ZodOptional>; icOutOfDate: z.ZodOptional; upkeep: z.ZodOptional; fixed: z.ZodRecord; skipped: z.ZodArray>; }, z.core.$strip>>; previousExit: z.ZodOptional; ic: z.ZodOptional; }, z.core.$strip>>; icOverrides: z.ZodOptional>; intenticOs: z.ZodOptional>; }, z.core.$strip>>; manages: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>; //# sourceMappingURL=hosts.d.ts.map