/** CI-session credential helpers for OIDC-backed deploy flows. */
import type { CredentialsProvider } from "./credentials.js";
export declare const CI_SESSION_CREDENTIALS: unique symbol;
export interface CiMarkedCredentialsProvider extends CredentialsProvider {
    readonly [CI_SESSION_CREDENTIALS]: true;
}
export interface CreateCiSessionCredentialsOptions {
    projectId: string;
    accessToken?: string;
    getAccessToken?: () => Promise<string>;
}
export interface GithubActionsCredentialsOptions {
    projectId: string;
    apiBase?: string;
    audience?: string;
    refreshBeforeSeconds?: number;
    fetch?: typeof globalThis.fetch;
}
export declare function isCiSessionCredentials(credentials: CredentialsProvider): credentials is CiMarkedCredentialsProvider;
export declare function createCiSessionCredentials(opts: CreateCiSessionCredentialsOptions): CiMarkedCredentialsProvider;
export declare function githubActionsCredentials(opts: GithubActionsCredentialsOptions): CiMarkedCredentialsProvider;
//# sourceMappingURL=ci-credentials.d.ts.map