import { type RecommendProblemsInput } from "./recommendations.js"; import { type FindTopicProblemsInput, type FindTopicProblemsResult } from "./topicSearch.js"; import type { ProblemRecord, ProblemSetRecord, ProblemSetSummary, ProblemSummary, UserProfile } from "./types.js"; export interface SearchProblemsInput { keyword: string; page?: number; limit?: number; tagIds?: number[]; } export interface SearchProblemsResult { platform: "luogu"; query: string; page: number; total: number; items: ProblemSummary[]; } export interface FetchProblemInput { pid: string; maxStatementChars?: number; } export interface FetchProblemResult extends ProblemRecord { truncated: boolean; } export interface SearchProblemSetsInput { keyword: string; page?: number; limit?: number; } export interface SearchProblemSetsResult { platform: "luogu"; query: string; page: number; total: number; items: ProblemSetSummary[]; } export interface FetchProblemSetInput { id: string; limit?: number; } export interface FetchProblemSetResult extends ProblemSetRecord { truncatedProblemList: boolean; } export interface ResolveProblemInput { query: string; maxStatementChars?: number; } export interface FindRelatedProblemsInput extends RecommendProblemsInput { query?: string; pid?: string; } export interface FindRelatedProblemsResult { query?: string; pid?: string; topic?: string; painPoint?: string; searchHints: string[]; items: ProblemSummary[]; } export interface GetUserProfileInput { uid: number; } export interface LuoguRouteCapability { name: string; status: "available" | "auth_required" | "planned"; note: string; } export interface LuoguRouteCapabilities { route: "luogu"; tools: LuoguRouteCapability[]; } export declare function searchProblemsTool(input: SearchProblemsInput, fetchImpl?: typeof fetch): Promise; export declare function fetchProblemTool(input: FetchProblemInput, fetchImpl?: typeof fetch): Promise; export declare function resolveProblemTool(input: ResolveProblemInput, fetchImpl?: typeof fetch): Promise; export declare function searchProblemSetsTool(input: SearchProblemSetsInput, fetchImpl?: typeof fetch): Promise; export declare function fetchProblemSetTool(input: FetchProblemSetInput, fetchImpl?: typeof fetch): Promise; export declare function recommendProblemsTool(input: RecommendProblemsInput): import("./recommendations.js").RecommendProblemsResult; export declare function findTopicProblemsTool(input: FindTopicProblemsInput, fetchImpl?: typeof fetch): Promise; export declare function listAlgorithmTopicsTool(): { platform: string; items: import("./topicCatalog.js").LuoguAlgorithmTopic[]; }; export declare function findRelatedProblemsTool(input: FindRelatedProblemsInput, fetchImpl?: typeof fetch): Promise; export declare function getUserProfileTool(input: GetUserProfileInput, fetchImpl?: typeof fetch): Promise; export declare function getCapabilitiesTool(): LuoguRouteCapabilities;