/**
 * User context service: resolves the authenticated user's identity and billing context.
 *
 * Fetches user/team/subscription metadata from the Shortcut API using the
 * OAuth access token.
 */
export interface UserInfo {
    userId: string;
    email?: string;
    teamId?: string;
    enterpriseRole?: string;
    plan?: string | null;
    proCreditsTier?: number | null;
    authorizedSkillTeamIds?: string[];
}
export interface UserContextOptions {
    /** Override the API base URL (for testing). */
    apiUrl?: string;
    /** Override fetch (for testing). */
    fetch?: typeof globalThis.fetch;
}
export interface UsersMeResourceAccessFields {
    authorizedSkillTeams?: unknown;
    authorizedResourceTeamsByType?: unknown;
}
export declare function parseAuthorizedSkillTeamIds(data: UsersMeResourceAccessFields): string[];
/**
 * Fetch user identity from the Shortcut API.
 * Returns null on any failure; never throws.
 */
export declare function fetchUserInfo(accessToken: string, options?: UserContextOptions): Promise<UserInfo | null>;
//# sourceMappingURL=user-context.d.ts.map