UNPKG

@codecovevienna/gittt-cli

Version:

Tracking time with CLI into a git repository

41 lines (40 loc) 1.79 kB
import { IProject, IProjectMeta, IRecord } from "../interfaces"; import { FileHelper, GitHelper } from "./"; export declare class ProjectHelper { /** * Extracts the domain from a IProjectMetaData object * * @param projectMeta - MetaData object * @returns Domain of the meta data as formatted string */ static projectMetaToDomain: (projectMeta: IProjectMeta) => string; /** * Constructs a meta data object from a formatted domain string * * @param domain - formatted domain string * @returns Meta data object based on the formatted string */ static domainToProjectMeta: (domain: string) => IProjectMeta; /** * @param project - IProject object * @returns Filename of the project file */ static projectToProjectFilename: (project: IProject) => string; /** * @param project - IProject object * @returns Path of the project file */ static getProjectPath: (project: IProject) => string; private fileHelper; private gitHelper; constructor(gitHelper: GitHelper, fileHelper: FileHelper); getGitttProject: () => Promise<IProject>; initProject: () => Promise<IProject>; addRecordsToProject: (records: IRecord[], project?: IProject | undefined, uniqueOnly?: boolean | undefined, nonOverlappingOnly?: boolean | undefined) => Promise<void>; addRecordToProject: (record: IRecord, project?: IProject | undefined, uniqueOnly?: boolean | undefined, nonOverlappingOnly?: boolean | undefined) => Promise<void>; getTotalHours: (projectName: string) => Promise<number>; getProjectByName: (name: string) => Promise<IProject>; getAllProjects: () => Promise<IProject[]>; getProjectFromGit: () => IProject; getOrAskForProjectFromGit: () => Promise<IProject>; }