import { DisposableCollection } from '@theia/core/lib/common/disposable'; import { Emitter } from '@theia/core/lib/common/event'; import { CancellationTokenSource } from '@theia/core/lib/common/cancellation'; import { ScmService } from './scm-service'; import { ScmHistoryItem, ScmHistoryProvider } from './scm-provider'; import { GraphRow } from './scm-history-graph-lanes'; export declare const PAGE_SIZE = 50; export interface HistoryGraphEntry { readonly item: ScmHistoryItem; readonly graphRow: GraphRow; } export declare class ScmHistoryGraphModel { protected readonly scmService: ScmService; protected readonly toDispose: DisposableCollection; protected readonly toDisposeOnProviderChange: DisposableCollection; protected _entries: HistoryGraphEntry[]; protected _hasMore: boolean; protected _loading: boolean; protected _hasAttemptedLoad: boolean; protected _provider: ScmHistoryProvider | undefined; protected readonly onDidChangeEmitter: Emitter; readonly onDidChange: import("@theia/core/lib/common/event").Event; protected cancelSource: CancellationTokenSource; protected init(): void; dispose(): void; get provider(): ScmHistoryProvider | undefined; get entries(): readonly HistoryGraphEntry[]; get hasMore(): boolean; get loading(): boolean; /** * Returns true once the model has completed at least one load attempt * (regardless of whether history items were found). This is used by * the widget to distinguish "still initializing" from "no history". */ get hasAttemptedLoad(): boolean; refresh(): void; loadMore(): Promise; protected loadPage(): Promise; /** * Returns the revisions of the current branch ref, its remote tracking ref, * and the merge-base ref to pass to `provideHistoryItems`. Providers walk * history starting from these revisions. */ protected getCurrentHistoryItemRefs(): string[]; } //# sourceMappingURL=scm-history-graph-model.d.ts.map