import { JobDefinition } from "@nosana/sdk"; import type { operations } from "../../clients/hostManager/schema.d.ts"; type RequestMarketResponse = operations["getNodesRequest-market"]["responses"][200]["content"]["application/json"]; export type SubmitBenchmarkBody = operations["postBenchmarksByIdSubmit-results"]["requestBody"]["content"]["application/json"]; type GetNodeResponse = operations["getNodesById"]["responses"][200]["content"]["application/json"]; export type NodeMetricsResponse = operations["getNodesByIdMetrics"]["responses"][200]["content"]["application/json"]; type RequiredResourcesResponse = operations["getMarketsByIdRequired-resources"]["responses"][200]["content"]["application/json"]; type HeartbeatResponse = operations["postNodesHeartbeat"]["responses"][200]["content"]["application/json"]; type ErrorReportBody = operations["postErrorsReport"]["requestBody"]["content"]["application/json"]; type SubmitAccessKeyTxResponse = operations["postNodesAccess-keySubmit"]["responses"][200]["content"]["application/json"]; export type FeedbackReport = NonNullable; export type RequestMarketResult = Pick & { notRegistered?: true; jobDefinition?: JobDefinition & { id: string; }; benchmarkId?: string; nextTestAt?: string; session?: string; }; export declare class HostManager { static register(email: string, discord?: string, twitter?: string): Promise; static requestMarket(market?: string, session?: string): Promise; static submitBenchmarkResults(benchmarkId: string, body: SubmitBenchmarkBody): Promise>; static submitAccessKeyTx(signedTx: string): Promise; static getNode(address: string): Promise; static getNodeMetrics(address: string): Promise; static getMarketRequiredResources(marketId: string): Promise; static sendHeartbeat(): Promise; static getRpcUrl(): Promise; static reportError(body: ErrorReportBody): Promise>; } export {};