/** * CI settings — org-level CI runner / repo configuration, GitHub App * installation management, per-repo override list. * * Mirrors `apps/api/src/server/platform/routes/ci-settings.ts` — paths * sourced from `@sylphx/contract`. */ import type { Client } from './client.js'; export interface OrgCiSettings { readonly orgId: string; readonly defaultRunnerClass: string; readonly maxParallelJobs: number; readonly autoCancelStale: boolean; readonly concurrency: number; readonly timeoutSeconds: number; readonly updatedAt: string; } export declare const getOrgSettings: (client: Client) => Promise<{ settings: OrgCiSettings; }>; export interface UpsertOrgSettingsInput { readonly defaultRunnerClass?: string; readonly maxParallelJobs?: number; readonly autoCancelStale?: boolean; readonly concurrency?: number; readonly timeoutSeconds?: number; } export declare const upsertOrgSettings: (client: Client, body: UpsertOrgSettingsInput) => Promise<{ settings: OrgCiSettings; }>; export interface RepoCiOverride { readonly id: string; readonly orgId: string; readonly repoFullName: string; readonly runnerClass: string | null; readonly maxParallelJobs: number | null; readonly updatedAt: string; } export declare const listRepoOverrides: (client: Client) => Promise<{ overrides: readonly RepoCiOverride[]; }>; export declare const upsertRepoOverride: (client: Client, body: { readonly repoFullName: string; readonly runnerClass?: string | null; readonly maxParallelJobs?: number | null; }) => Promise<{ override: RepoCiOverride; }>; export declare const deleteRepoOverride: (client: Client, repo: string) => Promise<{ success: boolean; }>; export interface CiInstallation { readonly id: string; readonly installationId: string; readonly accountLogin: string; readonly accountType: 'User' | 'Organization'; readonly repoSelection: 'all' | 'selected'; readonly connectedAt: string; } export declare const listInstallations: (client: Client) => Promise<{ installations: readonly CiInstallation[]; }>; export interface CiUsage { readonly orgId: string; readonly periodStart: string; readonly periodEnd: string; readonly minutesUsed: number; readonly minutesIncluded: number; readonly overageMinutes: number; } export declare const getUsage: (client: Client) => Promise<{ usage: CiUsage; }>; export declare const disconnectInstallation: (client: Client, installationId: string) => Promise<{ success: boolean; }>; //# sourceMappingURL=ciSettings.d.ts.map