import type { IssueRepository } from '../../../domain/usecases/adapter-interfaces/IssueRepository'; import type { ConsoleGithubTokenResolver } from './consoleGithubTokenResolver'; export type ReadRepositoriesSnapshot = { readRepositories: IssueRepository[]; mintedAtEpochMilliseconds: number; }; export type ReprovisionableReadRepositories = { getCurrentReadRepositories: () => Promise; remintAfterUnauthorized: (rejectedSnapshot: ReadRepositoriesSnapshot) => Promise; }; export declare const createReadOnlyTokenRotatingIssueRepository: (readRepositories: IssueRepository[] | ReprovisionableReadRepositories, writeRepository: IssueRepository) => IssueRepository; export declare const buildReadIssueRepositoryResolver: (githubAppPrivateKeyPathsByProject: Record | undefined, mintTokens: (paths: string[]) => Promise, buildIssueRepositoryForToken: (token: string) => IssueRepository, resolveGithubToken: ConsoleGithubTokenResolver, resolveProjectName: (repositoryOwner: string) => string | null, getCurrentEpochMilliseconds?: () => number) => Promise<(url: string) => IssueRepository>; //# sourceMappingURL=readOnlyTokenRotator.d.ts.map