import { type Repo } from './repo.ts'; /** One tree entry, flattened to a repository-relative path. */ export interface TreeEntry { readonly oid: string; /** git's own octal spelling, e.g. `100644`. */ readonly mode: string; } /** * Every blob a tree holds, keyed by repository-relative path. * * Flattened rather than walked per directory because every caller here compares * two whole trees; git's own diff does the same on the paths it has already * expanded. A submodule (`160000`) is carried through as an entry rather than * descended into: it names a commit in another repository. */ export declare function treeEntries(repo: Repo, treeOid: string, prefix?: string): Promise>; /** * Every blob a commit's tree holds, or an empty map for no commit at all. * * An empty map is what an unborn HEAD means: nothing is committed yet, so every * staged path reads as an addition. */ export declare function commitEntries(repo: Repo, commitOid: string | null): Promise>; //# sourceMappingURL=tree.d.ts.map