bookr-cli
Version:
A terminal-based CLI tool to book time in Jira using the Tempo plugin by parsing your current Git branch name
66 lines • 1.88 kB
TypeScript
import type { JiraIssue, JiraWorklog } from '../types/jira.js';
import type { TempoWorklog } from '../types/tempo.js';
export interface StoredWorklog {
id: string;
tempoWorklogId?: string;
issueKey: string;
issueId: string;
issueSummary: string;
timeSpent: string;
timeSpentSeconds: number;
comment?: string;
started: string;
createdAt: string;
author: {
name: string;
displayName: string;
};
source: 'jira' | 'tempo';
}
interface WorklogStorageData {
worklogs: StoredWorklog[];
lastWorklogId: string | undefined;
lastCleanup: string;
}
/**
* Get worklog storage file path
*/
export declare function getWorklogStoragePath(): string;
/**
* Read stored worklogs
*/
export declare function readStoredWorklogs(): WorklogStorageData;
/**
* Write stored worklogs
*/
export declare function writeStoredWorklogs(data: WorklogStorageData): void;
/**
* Store a worklog after creation
*/
export declare function storeWorklog(issue: JiraIssue, worklog: JiraWorklog, originalComment?: string): boolean;
/**
* Store a Tempo worklog after creation
*/
export declare function storeTempoWorklog(issue: JiraIssue, tempoWorklog: TempoWorklog, originalComment?: string): boolean;
/**
* Get worklog by ID
*/
export declare function getStoredWorklogById(worklogId: string): StoredWorklog | null;
/**
* Get the last worklog that was created
*/
export declare function getLastWorklog(): StoredWorklog | null;
/**
* Remove worklog from storage after deletion
*/
export declare function removeStoredWorklog(worklogId: string): boolean;
/**
* Get today's stored worklogs
*/
export declare function getTodaysStoredWorklogs(): StoredWorklog[];
/**
* Clean up old worklogs (older than 30 days)
*/
export declare function cleanupOldWorklogs(): number;
export {};
//# sourceMappingURL=worklog-storage.d.ts.map