import { GitLogCommit } from './gitlog';
export declare type BranchRefType = 'head' | 'remote' | 'tag';
export declare type BranchInfo = {
    name: string;
    refType?: BranchRefType;
};
export declare type ReflogRecord = {
    head: string;
    action: string;
    description: string;
};
export declare type Branch = {
    id: string;
    commits: string[];
    refType?: BranchRefType;
    remoteName?: string;
    repositoryUrl?: string;
};
export declare type Commit = GitLogCommit & {
    branchInfo: BranchInfo;
    reflog: ReflogRecord[];
};
export interface BranchCollection {
    [index: string]: Branch;
}
export interface CommitCollection {
    [index: string]: Commit;
}
