/** * routes/occasions.ts * * Handlers for the `occasions.*` gateway verbs over `OccasionsService` * (../../occasions/service.js). Thin verb registration in the same shape as * routes/owner-profile.ts: read the invocation params, call the service, answer. * * ## Every rule lives below this file * * Nothing here decides anything. The kind is not defaulted here, the nudge is * not composed here, quiet hours are not evaluated here, and no date is * formatted here. That is the point: a surface calls a verb and renders the * answer, and this layer is the only thing between the two. A rule implemented * in a route is a rule the next transport gets wrong. * * ## The two writes that touch the owner's file * * `occasions.confirm` and `occasions.plans.confirm` append a line to the owner * profile, and `occasions.remove` deletes one. All three take `authority` as a * required body parameter and go through `OwnerProfileStore`, which runs the * profile's own write gate before a line lands. `refuseNonUserRequest` runs * first on all three, for the same reason it does on `profile.set`: "you told * me this was not a user request" deserves its own answer rather than being * folded into a trust refusal naming a surface the caller never claimed. */ import type { GatewayMethodCatalog } from '../method-catalog.js'; import type { OccasionsService } from '../../occasions/service.js'; /** The surface of the service these verbs need. */ export type OccasionsGatewayService = Pick; export declare function registerOccasionsGatewayMethods(catalog: GatewayMethodCatalog, service: OccasionsGatewayService): void; //# sourceMappingURL=occasions.d.ts.map