/** * @packageDocumentation * @module API-AIVM */ import LuxCore from "../../lux"; import { RESTAPI } from "../../common/restapi"; import { AIProvider, RegisterProviderParams, RegisterProviderResponse, AITask, SubmitTaskParams, SubmitTaskResponse, SubmitResultParams, AIModel, VerifyAttestationParams, VerifyAttestationResponse, ClaimRewardsParams, RewardStats, AIVMStats } from "./interfaces"; /** * Class for interacting with the A-Chain (AI Chain) AIVM API. * * @category RPCAPIs * * @remarks This extends the [[RESTAPI]] class. This class should not be directly called. * Instead, use the [[Lux.addAPI]] function to register this interface with Lux. */ export declare class AIVMAPI extends RESTAPI { /** * Get all registered compute providers. */ getProviders: () => Promise; /** * Register a new compute provider. */ registerProvider: (params: RegisterProviderParams) => Promise; /** * Get pending tasks, optionally by ID. */ getTasks: (taskId?: string) => Promise; /** * Submit a new inference task. */ submitTask: (params: SubmitTaskParams) => Promise; /** * Submit result for a task. */ submitResult: (params: SubmitResultParams) => Promise; /** * Get available AI models. */ getModels: () => Promise; /** * Verify GPU attestation. */ verifyAttestation: (params: VerifyAttestationParams) => Promise; /** * Claim pending rewards. */ claimRewards: (params: ClaimRewardsParams) => Promise; /** * Get reward statistics. */ getRewardStats: () => Promise; /** * Get AIVM statistics. */ getStats: () => Promise; /** * Get merkle root for Q-Chain anchoring. */ getMerkle: () => Promise; /** * Health check. */ health: () => Promise; /** * This class should not be instantiated directly. Instead use the [[Lux.addAPI]] method. * * @param core A reference to the Lux class * @param baseURL Defaults to the string "/ext/bc/A" as the path to the A-Chain's baseURL */ constructor(core: LuxCore, baseURL?: string); } //# sourceMappingURL=api.d.ts.map