import { z } from "zod"; import { AGENT_ADAPTER_TYPES, INVITE_JOIN_TYPES, JOIN_REQUEST_STATUSES, JOIN_REQUEST_TYPES, PERMISSION_KEYS, } from "../constants.js"; export const createCompanyInviteSchema = z.object({ allowedJoinTypes: z.enum(INVITE_JOIN_TYPES).default("both"), defaultsPayload: z.record(z.string(), z.unknown()).optional().nullable(), agentMessage: z.string().max(4000).optional().nullable(), }); export const createOpenClawInvitePromptSchema = z.object({ agentMessage: z.string().max(4000).optional().nullable(), }); export const acceptInviteSchema = z.object({ requestType: z.enum(JOIN_REQUEST_TYPES), agentName: z.string().min(1).max(120).optional(), adapterType: z.enum(AGENT_ADAPTER_TYPES).optional(), capabilities: z.string().max(4000).optional().nullable(), agentDefaultsPayload: z.record(z.string(), z.unknown()).optional().nullable(), // OpenClaw join compatibility fields accepted at top level. responsesWebhookUrl: z.string().max(4000).optional().nullable(), responsesWebhookMethod: z.string().max(32).optional().nullable(), responsesWebhookHeaders: z.record(z.string(), z.unknown()).optional().nullable(), paperclipApiUrl: z.string().max(4000).optional().nullable(), webhookAuthHeader: z.string().max(4000).optional().nullable(), }); export const listJoinRequestsQuerySchema = z.object({ status: z.enum(JOIN_REQUEST_STATUSES).optional(), requestType: z.enum(JOIN_REQUEST_TYPES).optional(), }); export const claimJoinRequestApiKeySchema = z.object({ claimSecret: z.string().min(16).max(256), }); export const boardCliAuthAccessLevelSchema = z.enum([ "board", "instance_admin_required", ]); export const createCliAuthChallengeSchema = z.object({ command: z.string().min(1).max(240), clientName: z.string().max(120).optional().nullable(), requestedAccess: boardCliAuthAccessLevelSchema.default("board"), requestedCompanyId: z.string().uuid().optional().nullable(), }); export const resolveCliAuthChallengeSchema = z.object({ token: z.string().min(16).max(256), }); export const updateMemberPermissionsSchema = z.object({ grants: z.array(z.object({ permissionKey: z.enum(PERMISSION_KEYS), scope: z.record(z.string(), z.unknown()).optional().nullable(), })), }); export const updateUserCompanyAccessSchema = z.object({ companyIds: z.array(z.string().uuid()).default([]), }); //# sourceMappingURL=access.js.map