import type { FullIssueContext, NormalizedComment } from "../../domain/context.js"; import type { ProjectConfig } from "../../config/schema.js"; /** * Raw Jira DTOs stop here. Everything above the adapter sees domain types only, * so swapping REST for Rovo later cannot ripple into the application layer. */ type RawUser = { displayName?: string; emailAddress?: string; accountId?: string; }; export type RawIssue = { key?: string; id?: string; fields?: Record; }; export type RawComment = { id?: string; author?: RawUser; created?: string; updated?: string; body?: unknown; }; export type MappedIssue = { issue: FullIssueContext; /** Total comments Jira reports for this issue, not just the embedded page. */ commentTotal: number; }; export declare function mapIssue(raw: RawIssue, config: ProjectConfig): FullIssueContext; export declare function mapIssueWithMeta(raw: RawIssue, config: ProjectConfig): MappedIssue; export declare function mapComment(raw: RawComment): NormalizedComment; /** Collapse Jira's option/user/ADF wrappers into something worth a token. */ export declare function normalizeFieldValue(value: unknown): unknown; export {};