import type { ManualRestContractAuthId, ManualRestContractHttpMethodId, RestResourceMethodId } from './cli-add-shared.js'; interface RestResourceTemplateVariablesLike { namespace: string; pascalCase: string; routePattern?: string; slugKebabCase: string; title: string; } interface SyncRestResourceArtifactsOptions { clientFile: string; methods: RestResourceMethodId[]; outputDir: string; projectDir: string; typesFile: string; validatorsFile: string; variables: RestResourceTemplateVariablesLike; } interface ManualRestContractTemplateVariablesLike { auth: ManualRestContractAuthId; bodyTypeName?: string; method: ManualRestContractHttpMethodId; namespace: string; pascalCase: string; pathPattern: string; queryTypeName: string; responseTypeName: string; slugKebabCase: string; title: string; } interface SyncManualRestContractArtifactsOptions { clientFile: string; outputDir: string; projectDir: string; typesFile: string; validatorsFile: string; variables: ManualRestContractTemplateVariablesLike; } /** * Build the endpoint manifest for a workspace-level REST resource scaffold. * * @param variables Template naming data used for contract names, routes, and OpenAPI info. * @param methods Enabled REST methods for the generated resource. * @returns Endpoint manifest consumed by schema, OpenAPI, and client generators. */ export declare function buildRestResourceEndpointManifest(variables: RestResourceTemplateVariablesLike, methods: RestResourceMethodId[]): import("@wp-typia/block-runtime/metadata-core").EndpointManifestDefinition, import("@wp-typia/block-runtime/schema-core").EndpointOpenApiEndpointDefinition[]>; /** * Build the endpoint manifest for a type-only manual REST contract. Manual * contracts describe routes owned by another integration without generating PHP * route glue in the workspace. * * @param variables Template naming data used for contract names, route path, * and OpenAPI info. * @returns Endpoint manifest consumed by schema, OpenAPI, and client generators. */ export declare function buildManualRestContractEndpointManifest(variables: ManualRestContractTemplateVariablesLike): import("@wp-typia/block-runtime/metadata-core").EndpointManifestDefinition, readonly [{ readonly auth: "authenticated" | "public" | "public-write-protected"; readonly bodyContract?: string | undefined; readonly method: "DELETE" | "GET" | "PATCH" | "POST" | "PUT"; readonly operationId: `call${string}ManualRestContract`; readonly path: `/${string}${string}`; readonly queryContract: "query"; readonly responseContract: "response"; readonly summary: `Call external ${string} REST route.`; readonly tags: readonly [string]; readonly wordpressAuth?: { mechanism: 'rest-nonce'; } | { mechanism: 'public-signed-token'; } | undefined; }]>; /** * Synchronize generated schemas, OpenAPI output, and endpoint client code for * a workspace-level REST resource scaffold. * * @param options Resource file paths, enabled methods, and naming variables. * @returns A promise that resolves after every generated REST artifact has been refreshed. */ export declare function syncRestResourceArtifacts({ clientFile, methods, outputDir, projectDir, typesFile, validatorsFile, variables }: SyncRestResourceArtifactsOptions): Promise; /** * Synchronize generated schemas, OpenAPI output, and endpoint client code for a * type-only manual REST contract. * * @param options Contract file paths and naming variables. * @returns A promise that resolves after every generated artifact has refreshed. */ export declare function syncManualRestContractArtifacts({ clientFile, outputDir, projectDir, typesFile, validatorsFile, variables }: SyncManualRestContractArtifactsOptions): Promise; export {};