import type { ProblemRecord, ProblemSetRecord, ProblemSetSummary, ProblemSummary, SearchResults, UserProfile } from "./types.js"; export interface LuoguClientOptions { fetchImpl?: typeof fetch; userAgent?: string; } export interface SearchOptions { keyword: string; page?: number; tagIds?: number[]; } export declare class LuoguClient { private readonly fetchImpl; private readonly userAgent; constructor(options?: LuoguClientOptions); searchProblems(options: SearchOptions): Promise>; fetchProblem(pid: string): Promise; searchProblemSets(options: SearchOptions): Promise>; fetchProblemSet(id: string): Promise; fetchUserProfile(uid: number): Promise; private getJson; }