Generated from services/crossfire/node/packages/contracts/src/coordination-policy.ts at
52bf0279Definitions#
These TypeScript definitions document server validation. check.object rejects unknown fields. Custom functions and refinements specify additional checks.
Imported definitions#
services/crossfire/node/packages/contracts/src/schema/validation.tsservices/crossfire/node/packages/domain/src/coordination/values.ts
matrixWakeSelection#
matrixWakeSelection = check.object({ matrixUserId: check.matrixUserId, includeAgents: check.boolean })Related definitions:
coordinationPolicy#
coordinationPolicy = check.refine(check.object({ wakeMode: check.wakeMode,
senders: check.list(matrixWakeSelection, 2000), permissions: check.list(check.choice('room.agent.invite'), 1) }), policy => (policy.wakeMode !== 'everyone' || policy.senders.length === 0)
&& new Set(policy.senders.map(sender => sender.matrixUserId)).size === policy.senders.length, 'Select unique identities; everyone requires no individual selections') satisfies check.Parser<CoordinationPolicy>Related definitions:
defaultCoordinationPolicy#
export function defaultCoordinationPolicy(ownerMatrixId: string): CoordinationPolicy {
return { wakeMode: 'selected', senders: [{ matrixUserId: ownerMatrixId, includeAgents: false }], permissions: [] };
}Related definitions: