25 lines · 950 B · TypeScript
RawDownload
// ---------------------------------------------------------------------------// @executor-js/plugin-example/shared//// Schemas and the HttpApiGroup definition shared between the server and// client halves. Both `./server` and `./client` import from here so the// frontend's typed reactive client and the backend's handlers see the// exact same payload/response/error contracts.//// No React or Node imports here — server and client both import this.// --------------------------------------------------------------------------- import { HttpApiEndpoint, HttpApiGroup, Schema } from "@executor-js/sdk/core"; export const Greeting = Schema.Struct({  message: Schema.String,  count: Schema.Number,});export type Greeting = typeof Greeting.Type; export const ExampleApi = HttpApiGroup.make("example").add(  HttpApiEndpoint.post("greet", "/greet", {    payload: Schema.Struct({ name: Schema.String }),    success: Greeting,  }),);