import type { FileSystem } from "../ports/filesystem.js"; import type { GitClient } from "../ports/git.js"; import type { WarpContext } from "../warp/context.js"; import { GovernorTracker } from "../session/tracker.js"; import { ObservationCache } from "./cache.js"; import { Metrics } from "./metrics.js"; import { type PersistedLocalHistoryContext, type PersistedLocalHistoryStore } from "./persisted-local-history.js"; import type { PersistedLocalHistoryGraphContext } from "./persisted-local-history-graph.js"; import { RepoStateTracker, type RepoObservation } from "./repo-state.js"; import { type RuntimeCausalContext } from "./runtime-causal-context.js"; import { type GitTransitionHookEvent } from "./runtime-workspace-overlay.js"; import type { ResolvedWorkspace, WorkspaceCapabilityProfile, WorkspaceExecutionContext, WorkspaceMode, WorkspaceStatus } from "./workspace-router-model.js"; import type { WarpPool } from "./warp-pool.js"; export interface WorkspaceSlice { readonly sliceId: string; readonly governor: GovernorTracker; readonly cache: ObservationCache; readonly metrics: Metrics; readonly graftDir: string; readonly repoState: RepoStateTracker | null; } export interface BoundWorkspace { readonly repoId: string; readonly worktreeId: string; readonly worktreeRoot: string; readonly gitCommonDir: string; readonly graftignorePatterns: readonly string[]; readonly resolvePath: (input: string) => string; readonly capabilityProfile: WorkspaceCapabilityProfile; readonly warpWriterId: string; readonly transportSessionId: string; readonly slice: WorkspaceSlice; readonly getWarp: () => Promise; } export declare function createWorkspaceSlice(input: { readonly graftDir: string; readonly projectRoot?: string; readonly fs: FileSystem; readonly git: GitClient; readonly nextSliceId: string; }): WorkspaceSlice; export declare function createBoundWorkspace(input: { readonly resolved: ResolvedWorkspace; readonly graftDir: string; readonly capabilityProfile: WorkspaceCapabilityProfile; readonly actionName?: string | undefined; readonly slice: WorkspaceSlice; readonly fs: FileSystem; readonly transportSessionId: string; readonly warpWriterId?: string | undefined; readonly warpPool: WarpPool; }): Promise; export declare function buildWorkspaceCausalContext(binding: BoundWorkspace, observation: { readonly checkoutEpoch: number; }): RuntimeCausalContext; export declare function buildPersistedLocalHistoryContext(input: { readonly persistedLocalHistory: PersistedLocalHistoryStore; readonly mode: WorkspaceMode; readonly binding: BoundWorkspace; readonly observation: RepoObservation; readonly hookEvent?: GitTransitionHookEvent | null; }): PersistedLocalHistoryContext; export declare function buildPersistedLocalHistoryContextFromExecution(input: { readonly persistedLocalHistory: PersistedLocalHistoryStore; readonly execution: WorkspaceExecutionContext; readonly observation: RepoObservation; }): PersistedLocalHistoryContext; export declare function resolveCheckoutBoundaryHookEvent(input: { readonly fs: FileSystem; readonly git: GitClient; readonly binding: BoundWorkspace; readonly previousObservedAt: string; readonly observation: RepoObservation; }): Promise; export declare function buildPersistedLocalHistoryGraphContext(worktreeRoot: string, getWarp: () => Promise): Promise; export declare function boundWorkspaceStatus(mode: WorkspaceMode, binding: BoundWorkspace): WorkspaceStatus; export declare function unboundWorkspaceStatus(mode: WorkspaceMode): WorkspaceStatus; export declare function nextBindingSliceDir(graftDir: string, nextBindingCounter: number): string; //# sourceMappingURL=workspace-router-runtime.d.ts.map