Metadata describing this service.
OptionalmessageExplicit inbound types for a domain outside the built-in dispatcher.
Each own key is an exact domain.action type; its value is an existing
ACL capability or explicit null for no additional capability requirement.
Omission keeps non-built-in services attachment-only. Built-in NAP routes
ignore this map and retain their canonical capability mapping.
Extension dispatch also requires a live, unblocked source, an explicit
RuntimeAdapter.isDomainAllowed grant, and firewall admission. This map
neither injects a namespace binding nor grants any capability. The handler
owns payload validation and its extension's response contract.
ReadonlymockInspection and reset controls.
OptionalpushShell -> napplet push types for a custom domain: exact type -> recipient ACL
capability or explicit null. sendToEligibleNapplet delivers declared types
to live, unblocked, isDomainAllowed-granted sources; built-ins keep their map.
Handle a NIP-5D envelope from a napplet.
The requesting napplet's window identifier
NappletMessage JSON envelope (e.g., { type: 'signer.signEvent', id, event })
Callback to send NappletMessage responses back to the napplet
OptionalonRevoke live output when this endpoint loses a capability or is blocked.
OptionalonProject a denied registered extension request onto its host-owned contract. Only exact declared requests reach this callback. Omission stays silent; runtime never invents extension error envelopes. Retired sources get no reply.
OptionalonCancel operations whose permissions changed while the source remains live. Preserve replay history and send protocol-required terminal denials where applicable. Older handlers fall back to onWindowDestroyed for cleanup.
OptionalonAttach this handler to one runtime instance.
Narrow runtime-owned identity and recipient-send access.
OptionalonRelease runtime attachment state when replaced, unregistered, or destroyed.
OptionalonCalled when a napplet window is destroyed. Services should clean up any state associated with the window.
The destroyed napplet's window identifier
A mock service: a
ServiceHandlerplus itsmockcontrols.Example