UNPKG

@mieweb/wikigdrive

Version:

Google Drive to MarkDown synchronization

79 lines 2.44 kB
import { Container, ContainerConfig, ContainerEngine } from '../../ContainerEngine.js'; import { FileId } from '../../model/model.js'; import { FileContentService } from '../../utils/FileContentService.js'; export type JobType = 'sync' | 'sync_all' | 'transform' | 'git_fetch' | 'git_pull' | 'git_push' | 'git_reset' | 'git_commit' | 'run_action' | 'upload'; export type JobState = 'waiting' | 'running' | 'failed' | 'done'; export declare function initJob(): { id: string; state: JobState; }; export interface Job { id: string; state: JobState; progress?: { total: number; completed: number; warnings: number; failed?: number; }; type: JobType; title: string; trigger?: string; action_id?: string; payload?: string; access_token?: string; ts?: number; started?: number; finished?: number; startAfter?: number; user?: { name: string; email: string; }; } export interface Toast { title: string; message: string; } export interface DriveJobs { driveId: FileId; jobs: Job[]; archive: Job[]; } export interface DriveJobsMap { [driveId: FileId]: DriveJobs; } export declare function clearCachedChanges(googleFileSystem: FileContentService): Promise<void>; export declare class JobManagerContainer extends Container { readonly params: ContainerConfig; private driveJobsMap; private workerPool; constructor(params: ContainerConfig); init(engine: ContainerEngine): Promise<void>; getDriveJobs(driveId: FileId): Promise<DriveJobs>; setDriveJobs(driveId: FileId, driveJobs: DriveJobs): Promise<void>; scheduleWorker(type: string, payload: unknown): Promise<unknown>; schedule(driveId: FileId, job: Job): Promise<void>; ps(): Promise<DriveJobsMap>; inspect(driveId: FileId): Promise<DriveJobs>; run(): Promise<void>; private upload; private sync; private runAction; private gitFetch; private gitPull; private gitPush; private gitCommit; private gitReset; private scheduleRetry; private runJob; clearGitCache(driveId: FileId): Promise<void>; destroy(): Promise<void>; progressJob(folderId: FileId, jobId: string, { completed, total, warnings, failed }: { completed: any; total: any; warnings: any; failed: any; }): void; } //# sourceMappingURL=JobManagerContainer.d.ts.map