import { CheckoutOptions } from "./checkout-options"; import { Oid } from "./oid"; import { Repository } from "./repository"; import { Signature } from "./signature"; export namespace Stash { const enum APPLY_FLAGS { APPLY_DEFAULT = 0, APPLY_REINSTATE_INDEX = 1, } const enum APPLY_PROGRESS { NONE = 0, LOADING_STASH = 1, ANALYZE_INDEX = 2, ANALYZE_MODIFIED = 3, ANALYZE_UNTRACKED = 4, CHECKOUT_UNTRACKED = 5, CHECKOUT_MODIFIED = 6, DONE = 7, } const enum FLAGS { DEFAULT = 0, KEEP_INDEX = 1, INCLUDE_UNTRACKED = 2, INCLUDE_IGNORED = 4, } } export interface StashApplyOptions { version?: number | undefined; flags?: number | undefined; checkoutOptions?: CheckoutOptions | undefined; progressCb?: Function | undefined; progressPayload?: any; } export class Stash { static apply(repo: Repository, index: number, options?: StashApplyOptions): Promise; static applyInitOptions(opts: StashApplyOptions, version: number): number; static drop(repo: Repository, index: number): Promise; static foreach(repo: Repository, callback?: Function): Promise; static pop(repo: Repository, index: number, options?: StashApplyOptions): Promise; static save(repo: Repository, stasher: Signature, message: string, flags: number): Promise; }