/**
 * Main application layer composition
 *
 * Composes all services with their production dependencies.
 * Each service gets its dependencies provided, then all are merged.
 */
import { NodeContext } from "@effect/platform-node";
import { Layer } from "effect";
/**
 * Main production layer with all services and platform dependencies
 *
 * Dependency graph:
 *   NodeContext (FileSystem, Path, Terminal) - platform I/O for path resolution
 *   LaunchdServiceLayer (daemon lifecycle, uses Node APIs directly)
 *   GhostflowClient <- UnixSocketTransport (daemon communication)
 *   EventStreamService (real-time event streaming)
 *   ConfigManager <- NodeConfigStorage <- NodeContext
 *
 * Note: We use Layer.provideMerge to ensure NodeContext services (FileSystem, Path, Terminal)
 * are included in the layer's output type. This is required because @effect/cli commands
 * expect these services to be available.
 */
export declare const MainLive: Layer.Layer<import("@ghostflow/client").ConfigManager | import("@ghostflow/client").GhostflowClient | import("@ghostflow/client").LaunchdService | import("@ghostflow/client").EventStreamService | NodeContext.NodeContext, never, never>;
//# sourceMappingURL=MainLive.d.ts.map