export declare const DEV_RUNTIME_SOURCE_DIRECTORY = "source";
export declare class DevelopmentRuntimeSourceSnapshotError extends Error {
    constructor(message: string);
}
export interface DevelopmentSourceSnapshotPlan {
    readonly appRoot: string;
    readonly copyFiles: readonly string[];
    readonly copyRoots: readonly string[];
    readonly dependencyMounts: readonly DevelopmentSourceSnapshotDependencyMount[];
    readonly runtimeAppRoot: string;
    readonly snapshotRoot: string;
    readonly snapshotSourceRoot: string;
    readonly sourceRoot: string;
    readonly tsconfigPaths: readonly string[];
    readonly watchPaths: readonly string[];
}
export interface DevelopmentSourceSnapshotDependencyMount {
    readonly mountPath: string;
    readonly sourceKind: "installed" | "workspace";
    readonly sourcePath: string;
}
export declare function createDevelopmentSourceSnapshotPlan(input: {
    readonly appRoot: string;
    readonly snapshotRoot: string;
}): Promise<DevelopmentSourceSnapshotPlan>;
export declare function resolveDevelopmentSourceSnapshotWatchPaths(appRoot: string): Promise<string[]>;
export declare function toDevelopmentSourceSnapshotPath(input: {
    readonly snapshotSourceRoot: string;
    readonly sourcePath: string;
    readonly sourceRoot: string;
}): string;
/** Resolves the repository/workspace boundary used for authored development sources. */
export declare function resolveDevelopmentSourceRoot(appRoot: string): string;
/** Returns whether a path is authored workspace source rather than installed dependency data. */
export declare function isAuthoredSourcePath(path: string, sourceRoot: string): boolean;
