export type ProjectBinding = { authMode?: 'api_key' | 'login'; linkedAt: string; projectId?: null | string; projectName?: null | string; version: 1; }; export type RemoteObjectState = { files: Record; generatedSource?: SourceFileState; id: string; lastDeployedAt?: null | string; lockVersion?: number; slug: string; sourceFile?: SourceFileState; status?: string; updatedAt?: string; }; export type SourceFileState = { hash: string; path: string; }; export type RemoteMap = { functions: Record; project?: { id?: null | string; name?: null | string; }; version: 1; workflows: Record; }; export type DirtyFile = { path: string; reason: 'changed' | 'untracked'; }; export declare const KAPSO_CONFIG_PATH = "kapso.yaml"; export declare const PROJECT_BINDING_PATH: string; export declare const REMOTE_MAP_PATH: string; export declare class SourceRepo { readonly root: string; constructor(root?: string); abs(relativePath: string): string; ensureKapsoConfig(): Promise; ensureLayout(): Promise; exists(relativePath: string): Promise; fileHash(relativePath: string): Promise; readJson(relativePath: string): Promise; readProjectBinding(): Promise; readRemoteMap(): Promise; readText(relativePath: string): Promise; readYaml(relativePath: string): Promise; writeJson(relativePath: string, value: unknown): Promise; writeProjectBinding(binding: ProjectBinding): Promise; writeRemoteMap(map: RemoteMap): Promise; writeText(relativePath: string, value: string): Promise; writeYaml(relativePath: string, value: unknown): Promise; } export declare function canonicalJson(value: unknown): string; export declare function emptyRemoteMap(): RemoteMap; export declare function flattenRemoteFileHashes(map: RemoteMap): Record; export declare function normalizeSourceSlug(value: string): string; export declare function relativeFunctionPaths(slug: string, entrypoint: string): Record<'code' | 'metadata', string>; export declare function relativeWorkflowPaths(slug: string, definitionPath: string): Record<'definition' | 'metadata', string>; export declare function sha256(value: string): string; export declare function stableValue(value: unknown): unknown;