import { type ForgejoConfig, type ICacheManager, type IForgejoService, type IErrorHandler, type ILogger, type Repository, type Issue, type User, type CreateIssueData, type UpdateIssueData, type ListIssueOptions } from "./types.js"; /** * Implementation of the Forgejo API service layer. * Orchestrates all API operations through specialized service classes. */ export declare class ForgejoService implements IForgejoService { private readonly repositoryService; private readonly issueService; private readonly userService; constructor(config: ForgejoConfig, errorHandler: IErrorHandler, logger: ILogger, cacheManager: ICacheManager); listRepositories(owner: string): Promise; getRepository(owner: string, name: string): Promise; listIssues(owner: string, repo: string, options?: ListIssueOptions): Promise; getIssue(owner: string, repo: string, number: number, options?: { includeMetadata?: boolean; forceFresh?: boolean; }): Promise; createIssue(owner: string, repo: string, data: CreateIssueData): Promise; updateIssue(owner: string, repo: string, number: number, data: UpdateIssueData): Promise; updateTitle(owner: string, repo: string, number: number, newTitle: string, options?: { optimistic?: boolean; }): Promise; getUser(username: string): Promise; getCurrentUser(): Promise; }