37 lines
1.2 KiB
TypeScript
37 lines
1.2 KiB
TypeScript
import { listOperations as listRuntimeOperations } from './runtime-registry.ts';
|
|
|
|
export {
|
|
OperationRegistry,
|
|
RuntimeRegistryError,
|
|
listOperations,
|
|
operationRegistry,
|
|
requireExecutableOperation,
|
|
requireOperation,
|
|
} from './runtime-registry.ts';
|
|
export type { RuntimeRegistryErrorCode } from './runtime-registry.ts';
|
|
export { operationMetadata58e2204 } from './catalog-metadata-58e2204.ts';
|
|
export type { OperationCatalogMetadata } from './catalog-metadata-58e2204.ts';
|
|
|
|
/** Small public catalog row shape avoids exporting the 117-member internal descriptor union. */
|
|
export interface PublicOperationCatalogRow {
|
|
readonly operationId: string;
|
|
readonly title: string;
|
|
readonly riskLevel: 'R0' | 'R1' | 'R2' | 'R3';
|
|
readonly capability: string;
|
|
readonly batchable: boolean;
|
|
readonly parameterSchemaId: string;
|
|
}
|
|
|
|
export const listPublicOperationCatalog = (): readonly PublicOperationCatalogRow[] =>
|
|
listRuntimeOperations().map(
|
|
({ operationId, title, riskLevel, capability, batchable, parameterSchemaId }) =>
|
|
Object.freeze<PublicOperationCatalogRow>({
|
|
operationId,
|
|
title,
|
|
riskLevel,
|
|
capability,
|
|
batchable,
|
|
parameterSchemaId,
|
|
}),
|
|
);
|