import { BaseRequestOptions, BaseService, PaginatedRequestOptions, Sudo } from '../infrastructure'; export interface CommitSchema { id: string; short_id: string; created_at: Date; parent_ids?: string[]; title: string; message: string; author_name: string; author_email: string; authored_date?: Date; committer_name?: string; committer_email?: string; committed_date?: Date; } interface CommitAction { /** The action to perform */ action: 'create' | 'delete' | 'move' | 'update'; /** Full path to the file. Ex. lib/class.rb */ filePath: string; /** Original full path to the file being moved.Ex.lib / class1.rb */ previousPath?: string; /** File content, required for all except delete. Optional for move */ content?: string; /** text or base64. text is default. */ encoding?: string; /** Last known file commit id. Will be only considered in update, move and delete actions. */ lastCommitId?: string; } export declare class Commits extends BaseService { all(projectId: string | number, options?: PaginatedRequestOptions): Promise; cherryPick(projectId: string | number, sha: string, branch: string, options?: Sudo): Promise; comments(projectId: string | number, sha: string, options?: Sudo): Promise; create(projectId: string | number, branch: string, message: string, actions?: CommitAction[], options?: BaseRequestOptions): Promise; createComment(projectId: string | number, sha: string, note: string, options?: BaseRequestOptions): Promise; diff(projectId: string | number, sha: string, options?: Sudo): Promise; editStatus(projectId: string | number, sha: string, options?: BaseRequestOptions): Promise; references(projectId: string | number, sha: string, options?: Sudo): Promise; show(projectId: string | number, sha: string, options?: BaseRequestOptions): Promise; status(projectId: string | number, sha: string, options?: BaseRequestOptions): Promise; mergeRequests(projectId: string | number, sha: string, options?: BaseRequestOptions): Promise; } export {};