import { RouteKitControlClient } from "@velum-labs/routekit-control"; import type { ServiceRecord, StartDaemonResult } from "@velum-labs/routekit-runtime/service"; import { Effect } from "effect"; import { HttpClient } from "effect/unstable/http"; import { type CliSession, type ResolvedTelemetryTarget } from "./cli-session.js"; /** Returns only a client already resolved by this invocation; never starts a daemon. */ export declare function telemetryTargetIfResolved(session: CliSession): ResolvedTelemetryTarget | undefined; export declare function daemonDataTokenPath(): string; export declare function ensureDaemonDataToken(authToken?: string): string; export declare function daemonStore(): import("@velum-labs/routekit-runtime/service").ServiceRecordStore; export declare function readDaemonRecord(): ServiceRecord | undefined; export declare function controlClientForRecord(record: ServiceRecord): RouteKitControlClient; export declare function daemonRecordHealthy(record: ServiceRecord): Effect.Effect; export declare function canonicalConfigOrMigrationError(): string; export declare function daemonServeArgs(input?: { configPath?: string; host?: string; port?: number; authTokenFile?: string; portless?: boolean; drainGraceMs?: number; }): string[]; /** * Prove a join credential works before it is stored. A paste-ready credential * that turns out to be stale should fail at enrollment, not on the next * unrelated command. */ export declare function assertPeerCredentialUsable(peer: { publicRecordPath: string; controlToken: string; }): Effect.Effect; type EnsureDaemonInput = { configPath?: string; host?: string; port?: number; authToken?: string; portless?: boolean; drainGraceMs?: number; lifecycleLockHeld?: boolean; }; type EnsureDaemonResult = { client: RouteKitControlClient; record: ServiceRecord; start?: StartDaemonResult; }; export declare function ensureDaemon(input?: EnsureDaemonInput): Effect.Effect; export declare const routekitClient: Effect.Effect; export declare const connectDaemon: Effect.Effect<{ client: RouteKitControlClient; record: ServiceRecord; } | undefined, Error, HttpClient.HttpClient>; export declare function daemonLogPath(): string; export declare function daemonLifecycleLockPath(): string; export {};