import type { DailyChallenge, ProblemDetail, ProblemProgressResult, ProgressProblem, Region, SearchProblemsResult, SolutionDetail, SolutionSearchResult, SubmissionDetail, SubmissionHistoryResult, UserContestResult, UserProfile, UserStatus, UserSubmissionsResult } from "../../types.js"; type UnknownRecord = Record; export interface NormalizationMeta { readonly truncated: true; readonly omittedFields: readonly string[]; } /** * Reads and consumes adapter-only metadata exactly once. Nested values are * visited so callers that wrap an item in a result object do not lose marks. */ export declare function takeNormalizationMeta(value: unknown): NormalizationMeta | undefined; export declare function normalizeDailyChallenge(data: UnknownRecord, region: Region, invocationDate?: string): DailyChallenge; export declare function normalizeSearchProblems(data: UnknownRecord, region: Region, offset: number, limit: number): SearchProblemsResult; export declare function normalizeSolutionSearch(data: UnknownRecord, region: Region, titleSlug: string, offset: number, limit: number): SolutionSearchResult; export declare function normalizeSolutionDetail(data: UnknownRecord, region: Region, requested: { readonly topicId?: string; readonly slug?: string; }): SolutionDetail; export declare function normalizeProblemDetail(data: UnknownRecord, region: Region, requestedLanguage?: string, includeResourcePayload?: boolean): ProblemDetail; export declare function normalizeProgressBySlug(data: UnknownRecord, region: Region): ProgressProblem; export declare function normalizeProgressList(data: UnknownRecord, region: Region, offset: number, limit: number, requestedFilters?: { readonly questionStatus?: "SOLVED" | "ATTEMPTED"; readonly difficulty?: readonly ("EASY" | "MEDIUM" | "HARD")[]; }): ProblemProgressResult; export declare function normalizeSubmissionHistory(data: UnknownRecord, region: Region, offset: number, limit: number, requestedTitleSlug?: string): SubmissionHistoryResult; export declare function normalizeUserSubmissions(data: UnknownRecord, region: Region, username: string, mode: "recent" | "accepted", limit: number): UserSubmissionsResult; export declare function normalizeSubmissionDetail(data: UnknownRecord, region: Region, requestedId: string, includeCode: boolean): SubmissionDetail; export declare function normalizeUserProfile(data: UnknownRecord, region: Region, requestedUsername: string): UserProfile; export declare function normalizeUserContest(data: UnknownRecord, username: string, attendedOnly: boolean, offset?: number, limit?: number): UserContestResult; export declare function normalizeUserStatus(data: UnknownRecord, region: Region): UserStatus; export {}; //# sourceMappingURL=read-normalization.d.ts.map