/** * `vana app ask | status | lineage` - questions over a person's data. * * A question is computed on the owner's own Personal Server over source * scopes the app never reads, and the answer is written into a derived * scope the app does read. That is why `ask` goes through consent: the * question travels inside the access request, so the app holds a grant on * the answer rather than on the sources. * * Pricing note. Two separate costs live here and the CLI reports them * separately rather than folding them into one number, because only one of * them exists today and the other is an open decision: * * - the compute itself emits no fee event today, so it is reported as * `computeCost: null` rather than as free; when a price appears it is a * number in a field that already exists * - reading the derived scope afterwards is an ordinary billable read and * goes through the same escrow path, gates and receipts as any other * * No price is hardcoded anywhere: every amount comes from what the * protocol quotes. */ import { getDerivativeStatus, getLineage } from "@opendatalabs/vana-sdk"; import { resolveAppKey } from "../../core/app-key.js"; import { type RequestsStore } from "../../core/requests-store.js"; import { type AppCommandOptions } from "./outcome.js"; export interface DerivativeCommandOptions extends AppCommandOptions { /** Grant covering the derived scope; resolved from the store when absent. */ grant?: string; /** Personal Server URL; resolved from the stored request when absent. */ server?: string; } export interface DerivativeDeps { resolveKey?: typeof resolveAppKey; requests?: RequestsStore; status?: typeof getDerivativeStatus; lineage?: typeof getLineage; } export declare function runAppStatus(derivedScope: string, options: DerivativeCommandOptions, deps?: DerivativeDeps): Promise; export declare function runAppLineage(scope: string, options: DerivativeCommandOptions, deps?: DerivativeDeps): Promise; //# sourceMappingURL=derivatives.d.ts.map