import type { AuditTask } from "../types.js"; import type { AuditPlanMetrics, ReviewPacket } from "../types/reviewPlanning.js"; import type { GraphBundle, GraphEdge } from "audit-tools/shared"; import { normalizeGraphPath } from "../extractors/graphPathUtils.js"; import { ESTIMATED_TOKENS_PER_LINE, ESTIMATED_PACKET_PROMPT_TOKENS, sizeIndexFromManifest, estimateTaskGroupTokens } from "./reviewPacketSizing.js"; import type { ReviewPacketPlanningData } from "./reviewPacketShared.js"; export { normalizeGraphPath }; export { ESTIMATED_TOKENS_PER_LINE, ESTIMATED_PACKET_PROMPT_TOKENS, sizeIndexFromManifest, estimateTaskGroupTokens, }; export interface BuildReviewPacketOptions { graphBundle?: GraphBundle; lineIndex?: Record; sizeIndex?: Record; continuityScores?: Map; [presentationInput: string]: unknown; } /** Canonical component order; optional presentation inputs cannot reorder it. */ export declare function orderReviewPackets(packets: ReviewPacket[], ..._ignored: readonly unknown[]): ReviewPacket[]; /** Materialize one already-selected component into report/prompt metadata. */ export declare function buildPacket(inputTasks: AuditTask[], packetIndex: number, lineIndex?: Record, sizeIndex?: Record, graphEdges?: GraphEdge[], graphBundle?: GraphBundle): ReviewPacket; /** * Project tasks onto the affinity graph and derive the full packetization * (packets + the graph edges the packets were cut against). `buildAuditPlanMetrics` * is the production consumer; exported so packetization can be asserted at its own * seam rather than through the metrics projection that wraps it. */ export declare function buildReviewPacketPlanningData(tasks: AuditTask[], options?: BuildReviewPacketOptions): ReviewPacketPlanningData; export declare function buildAuditPlanMetrics(tasks: AuditTask[], options?: BuildReviewPacketOptions & { generatedAt?: Date; }): AuditPlanMetrics; //# sourceMappingURL=reviewPackets.d.ts.map