The Repository allows us to access a database of some kind.

interface Repository {
    addApproval(input: ParsedResultBasic): Promise<void>;
    addChangesRequested(input: ParsedResultBasic): Promise<void>;
    addClosedPr(input: ParsedResultBasic): Promise<void>;
    addComment(input: ParsedResultBasic): Promise<void>;
    addMergedPr(input: ParsedResultBasic): Promise<void>;
    addOpenedPr(input: ParsedResultBasic): Promise<void>;
    addPickupTime(result: ParsedResult): Promise<void>;
    addPushed(input: ParsedResultBasic): Promise<void>;
    addReviewSize(result: ParsedResult): Promise<void>;
    addReviewTime(result: ParsedResult): Promise<void>;
    cacheMetrics(cacheRequest: CacheRequest): Promise<void>;
    getCachedMetrics(dataRequest: DataRequest): Promise<MetricsResult>;
    getMetrics(dataRequest: DataRequest): Promise<CleanedItem[]>;
}

Implemented by

Methods