import type { Api, Model } from "@earendil-works/pi-ai"; import type { OAuthCredentials } from "@earendil-works/pi-ai/oauth"; /** * Header carrying the Kiro profile ARN. Previously redeclared as an * identical string literal across index.ts, kiro.ts, and oauth.ts. */ export declare const KIRO_PROFILE_ARN_HEADER = "x-kiro-profile-arn"; /** * Resolve the Kiro profile ARN from OAuth credentials. * * Reads the persisted `profileArn` field first, then falls back to a * case-insensitive lookup of the profile-ARN request header. Previously * defined with identical bodies in index.ts and oauth.ts. */ export declare function profileArnFromCredentials(credentials: OAuthCredentials): string | undefined; /** * Stamp the resolved profile ARN onto every model's headers. * * Returns the models unchanged when no profile ARN is present. Previously * the body of the `modifyModels` OAuth-provider method was duplicated in * index.ts and oauth.ts. */ export declare function applyProfileArnToModels(models: Model[], credentials: OAuthCredentials): Model[]; /** * Resolve the OAuth provider id and display name from options and config. * * Previously inlined identically in `createLazyKiroOAuthProvider` * (index.ts) and `createKiroOAuthProvider` (oauth.ts). Accepts a narrow * structural config type to avoid a circular import with config.ts. */ export declare function resolveOAuthProviderIdentity(options: { providerId?: string; displayName?: string; }, config: { providerId?: string; }): { providerId: string; displayName: string; };