import { type ArtifactSyncExecutionOptions } from '@wp-typia/block-runtime/metadata-core'; import type { JsonSchemaDocument } from '../schema/schema-core.js'; interface AiFeatureTemplateVariablesLike { namespace: string; pascalCase: string; slugKebabCase: string; title: string; } interface SyncAiFeatureRestArtifactsOptions { clientFile: string; executionOptions?: ArtifactSyncExecutionOptions; outputDir: string; projectDir: string; typesFile: string; validatorsFile: string; variables: AiFeatureTemplateVariablesLike; } /** * Configures the AI-safe schema projection for one scaffolded AI feature. */ export interface SyncAiFeatureSchemaArtifactOptions extends ArtifactSyncExecutionOptions { aiSchemaFile: string; outputDir: string; projectDir: string; } /** * Carries the generated AI schema document and the file paths touched on disk. */ export interface SyncAiFeatureSchemaArtifactResult { aiSchema: JsonSchemaDocument & Record; aiSchemaPath: string; check: boolean; sourceSchemaPath: string; } /** * Build the endpoint manifest for a workspace-level AI feature scaffold. * * The endpoint response wraps a typed AI result payload together with provider, * model, and token-usage telemetry. The nested `feature-result` contract is * also kept in the manifest so `sync-rest` can emit the canonical JSON Schema * that `sync-ai` later projects into the AI structured-output profile. * * @param variables Template naming data used for type names, routes, and docs. * @returns Endpoint manifest consumed by schema, OpenAPI, and client generators. */ export declare function buildAiFeatureEndpointManifest(variables: AiFeatureTemplateVariablesLike): import("@wp-typia/block-runtime/metadata-core").EndpointManifestDefinition<{ readonly 'feature-request': { readonly sourceTypeName: `${string}AiFeatureRequest`; }; readonly 'feature-response': { readonly sourceTypeName: `${string}AiFeatureResponse`; }; readonly 'feature-result': { readonly sourceTypeName: `${string}AiFeatureResult`; }; }, readonly [{ readonly auth: "authenticated"; readonly bodyContract: "feature-request"; readonly method: "POST"; readonly operationId: `run${string}AiFeature`; readonly path: `/${string}/ai/${string}`; readonly responseContract: "feature-response"; readonly summary: `Run the ${string} AI feature endpoint.`; readonly tags: readonly [`${string} AI`]; readonly wordpressAuth: { readonly mechanism: "rest-nonce"; }; }]>; /** * Synchronize generated schemas, OpenAPI output, and endpoint client code for * a workspace-level AI feature scaffold. * * @param options Feature file paths and naming variables. * @returns A promise that resolves after every generated REST artifact has been refreshed. */ export declare function syncAiFeatureRestArtifacts({ clientFile, executionOptions, outputDir, projectDir, typesFile, validatorsFile, variables }: SyncAiFeatureRestArtifactsOptions): Promise; /** * Project the canonical AI result contract for one scaffolded feature into the * AI structured-output schema profile consumed by `wp_ai_client_prompt()`. * * @param options Artifact destination plus the feature output directory. * @returns The projected AI schema and the source schema path it derived from. */ export declare function syncAiFeatureSchemaArtifact({ aiSchemaFile, check, outputDir, projectDir }: SyncAiFeatureSchemaArtifactOptions): Promise; export {};