import type ProviderRegistry from '../../provider/provider.registry'; import { type ToolInputOf, type ToolOutputOf } from '../decorators'; import { type JobContext } from '../interfaces'; import { type ToolInputType, type ToolOutputType } from '../metadata'; import { type JobMetadata } from '../metadata/job.metadata'; import { type JobRecord } from '../records'; import { BaseEntry, type EntryOwnerRef } from './base.entry'; import { type SafeTransformResult } from './tool.entry'; export declare abstract class JobEntry, Out = ToolOutputOf<{ outputSchema: OutSchema; }>> extends BaseEntry, JobMetadata> { owner: EntryOwnerRef; name: string; fullName: string; inputSchema: InSchema; outputSchema: OutSchema; abstract get providers(): ProviderRegistry; isDynamic(): boolean; isHidden(): boolean; getTags(): string[]; getLabels(): Record; /** * Get the job's input schema as JSON Schema. */ getInputJsonSchema(): Record | null; /** * Get the job's output schema as JSON Schema. */ getOutputJsonSchema(): Record | null; abstract create(input: In, extra: { authInfo: Partial>; contextProviders?: unknown; }): JobContext; abstract parseInput(input: unknown): In; abstract parseOutput(raw: Out | Partial): unknown; abstract safeParseOutput(raw: Out | Partial): SafeTransformResult; } //# sourceMappingURL=job.entry.d.ts.map