/** * Piagnet Configuration Schema * * Defines the configuration structure for Piagnet gateway, * agents, channels, and access control policies. */ import { z } from "zod"; /** Channel scope schema */ export declare const channelScopeSchema: z.ZodEnum<["dm", "group", "thread", "channel"]>; /** Access control policy schema */ export declare const accessControlPolicySchema: z.ZodObject<{ dmPolicy: z.ZodDefault>; dmAllowlist: z.ZodOptional>; groupPolicy: z.ZodDefault>; groupAllowlist: z.ZodOptional>; }, "strip", z.ZodTypeAny, { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }, { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }>; /** Channel binding schema */ export declare const channelBindingSchema: z.ZodObject<{ agentId: z.ZodString; channel: z.ZodString; bindType: z.ZodEnum<["peer", "guild", "team", "account", "channel", "default"]>; bindValue: z.ZodString; access: z.ZodObject<{ dmPolicy: z.ZodDefault>; dmAllowlist: z.ZodOptional>; groupPolicy: z.ZodDefault>; groupAllowlist: z.ZodOptional>; }, "strip", z.ZodTypeAny, { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }, { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }>; }, "strip", z.ZodTypeAny, { agentId: string; channel: string; bindType: "account" | "channel" | "default" | "guild" | "peer" | "team"; bindValue: string; access: { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }; }, { agentId: string; channel: string; bindType: "account" | "channel" | "default" | "guild" | "peer" | "team"; bindValue: string; access: { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }; }>; /** Channel configuration schema */ export declare const channelConfigSchema: z.ZodObject<{ type: z.ZodString; name: z.ZodString; enabled: z.ZodDefault; config: z.ZodDefault>; access: z.ZodObject<{ dmPolicy: z.ZodDefault>; dmAllowlist: z.ZodOptional>; groupPolicy: z.ZodDefault>; groupAllowlist: z.ZodOptional>; }, "strip", z.ZodTypeAny, { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }, { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }>; }, "strip", z.ZodTypeAny, { type: string; name: string; enabled: boolean; config: Record; access: { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }; }, { type: string; name: string; enabled?: boolean | undefined; config?: Record | undefined; access: { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }; }>; /** Agent definition schema */ export declare const agentDefinitionSchema: z.ZodObject<{ id: z.ZodString; name: z.ZodString; description: z.ZodOptional; model: z.ZodObject<{ provider: z.ZodString; model: z.ZodString; }, "strip", z.ZodTypeAny, { provider: string; model: string; }, { provider: string; model: string; }>; systemPrompt: z.ZodOptional; skills: z.ZodDefault>; tools: z.ZodOptional>; deny: z.ZodOptional>; }, "strip", z.ZodTypeAny, { allow?: string[] | undefined; deny?: string[] | undefined; }, { allow?: string[] | undefined; deny?: string[] | undefined; }>>; sandbox: z.ZodOptional; workspace: z.ZodOptional; }, "strip", z.ZodTypeAny, { enabled: boolean; workspace?: string | undefined; }, { enabled?: boolean | undefined; workspace?: string | undefined; }>>; session: z.ZodDefault; dmHistoryLimit: z.ZodOptional; idleMinutes: z.ZodDefault; dailyResetHour: z.ZodDefault; compression: z.ZodDefault>; queuing: z.ZodDefault>; }, "strip", z.ZodTypeAny, { historyLimit: number; dmHistoryLimit?: number | undefined; idleMinutes: number; dailyResetHour: number; compression: "none" | "summary"; queuing: "collect" | "concurrent" | "followup" | "sequential" | "steer"; }, { historyLimit?: number | undefined; dmHistoryLimit?: number | undefined; idleMinutes?: number | undefined; dailyResetHour?: number | undefined; compression?: "none" | "summary" | undefined; queuing?: "collect" | "concurrent" | "followup" | "sequential" | "steer" | undefined; }>>; bootstrap: z.ZodDefault>; maxChars: z.ZodDefault; }, "strip", z.ZodTypeAny, { files: string[]; maxChars: number; }, { files?: string[] | undefined; maxChars?: number | undefined; }>>; memory: z.ZodDefault; files: z.ZodDefault>; }, "strip", z.ZodTypeAny, { enabled: boolean; files: string[]; }, { enabled?: boolean | undefined; files?: string[] | undefined; }>>; }, "strip", z.ZodTypeAny, { id: string; name: string; description?: string | undefined; model: { provider: string; model: string; }; systemPrompt?: string | undefined; skills: string[]; tools?: { allow?: string[] | undefined; deny?: string[] | undefined; } | undefined; sandbox?: { enabled: boolean; workspace?: string | undefined; } | undefined; session: { historyLimit: number; dmHistoryLimit?: number | undefined; idleMinutes: number; dailyResetHour: number; compression: "none" | "summary"; queuing: "collect" | "concurrent" | "followup" | "sequential" | "steer"; }; bootstrap: { files: string[]; maxChars: number; }; memory: { enabled: boolean; files: string[]; }; }, { id: string; name: string; description?: string | undefined; model: { provider: string; model: string; }; systemPrompt?: string | undefined; skills?: string[] | undefined; tools?: { allow?: string[] | undefined; deny?: string[] | undefined; } | undefined; sandbox?: { enabled?: boolean | undefined; workspace?: string | undefined; } | undefined; session?: { historyLimit?: number | undefined; dmHistoryLimit?: number | undefined; idleMinutes?: number | undefined; dailyResetHour?: number | undefined; compression?: "none" | "summary" | undefined; queuing?: "collect" | "concurrent" | "followup" | "sequential" | "steer" | undefined; } | undefined; bootstrap?: { files?: string[] | undefined; maxChars?: number | undefined; } | undefined; memory?: { enabled?: boolean | undefined; files?: string[] | undefined; } | undefined; }>; /** Gateway configuration schema */ export declare const gatewayConfigSchema: z.ZodObject<{ port: z.ZodDefault; wsPath: z.ZodDefault; publicDir: z.ZodDefault; sessionDir: z.ZodDefault; debug: z.ZodDefault; corsOrigins: z.ZodDefault>; }, "strip", z.ZodTypeAny, { port: number; wsPath: string; publicDir: string; sessionDir: string; debug: boolean; corsOrigins: string[]; }, { port?: number | undefined; wsPath?: string | undefined; publicDir?: string | undefined; sessionDir?: string | undefined; debug?: boolean | undefined; corsOrigins?: string[] | undefined; }>; /** Node configuration schema */ export declare const nodeConfigSchema: z.ZodObject<{ enabled: z.ZodDefault; discovery: z.ZodDefault; tailnet: z.ZodDefault; }, "strip", z.ZodTypeAny, { mdns: boolean; tailnet: boolean; }, { mdns?: boolean | undefined; tailnet?: boolean | undefined; }>>; tailnet: z.ZodOptional; }, "strip", z.ZodTypeAny, { authKey?: string | undefined; }, { authKey?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { enabled: boolean; discovery: { mdns: boolean; tailnet: boolean; }; tailnet?: { authKey?: string | undefined; } | undefined; }, { enabled?: boolean | undefined; discovery?: { mdns?: boolean | undefined; tailnet?: boolean | undefined; } | undefined; tailnet?: { authKey?: string | undefined; } | undefined; }>; /** Full Piagnet configuration schema */ export declare const piagnetConfigSchema: z.ZodObject<{ version: z.ZodDefault; gateway: z.ZodDefault; wsPath: z.ZodDefault; publicDir: z.ZodDefault; sessionDir: z.ZodDefault; debug: z.ZodDefault; corsOrigins: z.ZodDefault>; }, "strip", z.ZodTypeAny, { port: number; wsPath: string; publicDir: string; sessionDir: string; debug: boolean; corsOrigins: string[]; }, { port?: number | undefined; wsPath?: string | undefined; publicDir?: string | undefined; sessionDir?: string | undefined; debug?: boolean | undefined; corsOrigins?: string[] | undefined; }>>; node: z.ZodDefault; discovery: z.ZodDefault; tailnet: z.ZodDefault; }, "strip", z.ZodTypeAny, { mdns: boolean; tailnet: boolean; }, { mdns?: boolean | undefined; tailnet?: boolean | undefined; }>>; tailnet: z.ZodOptional; }, "strip", z.ZodTypeAny, { authKey?: string | undefined; }, { authKey?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { enabled: boolean; discovery: { mdns: boolean; tailnet: boolean; }; tailnet?: { authKey?: string | undefined; } | undefined; }, { enabled?: boolean | undefined; discovery?: { mdns?: boolean | undefined; tailnet?: boolean | undefined; } | undefined; tailnet?: { authKey?: string | undefined; } | undefined; }>>; agents: z.ZodDefault; model: z.ZodObject<{ provider: z.ZodString; model: z.ZodString; }, "strip", z.ZodTypeAny, { provider: string; model: string; }, { provider: string; model: string; }>; systemPrompt: z.ZodOptional; skills: z.ZodDefault>; tools: z.ZodOptional>; deny: z.ZodOptional>; }, "strip", z.ZodTypeAny, { allow?: string[] | undefined; deny?: string[] | undefined; }, { allow?: string[] | undefined; deny?: string[] | undefined; }>>; sandbox: z.ZodOptional; workspace: z.ZodOptional; }, "strip", z.ZodTypeAny, { enabled: boolean; workspace?: string | undefined; }, { enabled?: boolean | undefined; workspace?: string | undefined; }>>; session: z.ZodDefault; dmHistoryLimit: z.ZodOptional; idleMinutes: z.ZodDefault; dailyResetHour: z.ZodDefault; compression: z.ZodDefault>; queuing: z.ZodDefault>; }, "strip", z.ZodTypeAny, { historyLimit: number; dmHistoryLimit?: number | undefined; idleMinutes: number; dailyResetHour: number; compression: "none" | "summary"; queuing: "collect" | "concurrent" | "followup" | "sequential" | "steer"; }, { historyLimit?: number | undefined; dmHistoryLimit?: number | undefined; idleMinutes?: number | undefined; dailyResetHour?: number | undefined; compression?: "none" | "summary" | undefined; queuing?: "collect" | "concurrent" | "followup" | "sequential" | "steer" | undefined; }>>; bootstrap: z.ZodDefault>; maxChars: z.ZodDefault; }, "strip", z.ZodTypeAny, { files: string[]; maxChars: number; }, { files?: string[] | undefined; maxChars?: number | undefined; }>>; memory: z.ZodDefault; files: z.ZodDefault>; }, "strip", z.ZodTypeAny, { enabled: boolean; files: string[]; }, { enabled?: boolean | undefined; files?: string[] | undefined; }>>; }, "strip", z.ZodTypeAny, { id: string; name: string; description?: string | undefined; model: { provider: string; model: string; }; systemPrompt?: string | undefined; skills: string[]; tools?: { allow?: string[] | undefined; deny?: string[] | undefined; } | undefined; sandbox?: { enabled: boolean; workspace?: string | undefined; } | undefined; session: { historyLimit: number; dmHistoryLimit?: number | undefined; idleMinutes: number; dailyResetHour: number; compression: "none" | "summary"; queuing: "collect" | "concurrent" | "followup" | "sequential" | "steer"; }; bootstrap: { files: string[]; maxChars: number; }; memory: { enabled: boolean; files: string[]; }; }, { id: string; name: string; description?: string | undefined; model: { provider: string; model: string; }; systemPrompt?: string | undefined; skills?: string[] | undefined; tools?: { allow?: string[] | undefined; deny?: string[] | undefined; } | undefined; sandbox?: { enabled?: boolean | undefined; workspace?: string | undefined; } | undefined; session?: { historyLimit?: number | undefined; dmHistoryLimit?: number | undefined; idleMinutes?: number | undefined; dailyResetHour?: number | undefined; compression?: "none" | "summary" | undefined; queuing?: "collect" | "concurrent" | "followup" | "sequential" | "steer" | undefined; } | undefined; bootstrap?: { files?: string[] | undefined; maxChars?: number | undefined; } | undefined; memory?: { enabled?: boolean | undefined; files?: string[] | undefined; } | undefined; }>, "many">>; channels: z.ZodDefault; config: z.ZodDefault>; access: z.ZodObject<{ dmPolicy: z.ZodDefault>; dmAllowlist: z.ZodOptional>; groupPolicy: z.ZodDefault>; groupAllowlist: z.ZodOptional>; }, "strip", z.ZodTypeAny, { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }, { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }>; }, "strip", z.ZodTypeAny, { type: string; name: string; enabled: boolean; config: Record; access: { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }; }, { type: string; name: string; enabled?: boolean | undefined; config?: Record | undefined; access: { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }; }>, "many">>; bindings: z.ZodDefault; bindValue: z.ZodString; access: z.ZodObject<{ dmPolicy: z.ZodDefault>; dmAllowlist: z.ZodOptional>; groupPolicy: z.ZodDefault>; groupAllowlist: z.ZodOptional>; }, "strip", z.ZodTypeAny, { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }, { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }>; }, "strip", z.ZodTypeAny, { agentId: string; channel: string; bindType: "account" | "channel" | "default" | "guild" | "peer" | "team"; bindValue: string; access: { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }; }, { agentId: string; channel: string; bindType: "account" | "channel" | "default" | "guild" | "peer" | "team"; bindValue: string; access: { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }; }>, "many">>; defaults: z.ZodDefault; model: z.ZodOptional>; }, "strip", z.ZodTypeAny, { agent?: string | undefined; model?: { provider: string; model: string; } | undefined; }, { agent?: string | undefined; model?: { provider: string; model: string; } | undefined; }>>; }, "strip", z.ZodTypeAny, { version: string; gateway: { port: number; wsPath: string; publicDir: string; sessionDir: string; debug: boolean; corsOrigins: string[]; }; node: { enabled: boolean; discovery: { mdns: boolean; tailnet: boolean; }; tailnet?: { authKey?: string | undefined; } | undefined; }; agents: { id: string; name: string; description?: string | undefined; model: { provider: string; model: string; }; systemPrompt?: string | undefined; skills: string[]; tools?: { allow?: string[] | undefined; deny?: string[] | undefined; } | undefined; sandbox?: { enabled: boolean; workspace?: string | undefined; } | undefined; session: { historyLimit: number; dmHistoryLimit?: number | undefined; idleMinutes: number; dailyResetHour: number; compression: "none" | "summary"; queuing: "collect" | "concurrent" | "followup" | "sequential" | "steer"; }; bootstrap: { files: string[]; maxChars: number; }; memory: { enabled: boolean; files: string[]; }; }[]; channels: { type: string; name: string; enabled: boolean; config: Record; access: { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }; }[]; bindings: { agentId: string; channel: string; bindType: "account" | "channel" | "default" | "guild" | "peer" | "team"; bindValue: string; access: { dmPolicy: "allowlist" | "open" | "pairing"; dmAllowlist?: string[] | undefined; groupPolicy: "allowlist" | "mention" | "open"; groupAllowlist?: string[] | undefined; }; }[]; defaults: { agent?: string | undefined; model?: { provider: string; model: string; } | undefined; }; }, { version?: string | undefined; gateway?: { port?: number | undefined; wsPath?: string | undefined; publicDir?: string | undefined; sessionDir?: string | undefined; debug?: boolean | undefined; corsOrigins?: string[] | undefined; } | undefined; node?: { enabled?: boolean | undefined; discovery?: { mdns?: boolean | undefined; tailnet?: boolean | undefined; } | undefined; tailnet?: { authKey?: string | undefined; } | undefined; } | undefined; agents?: { id: string; name: string; description?: string | undefined; model: { provider: string; model: string; }; systemPrompt?: string | undefined; skills?: string[] | undefined; tools?: { allow?: string[] | undefined; deny?: string[] | undefined; } | undefined; sandbox?: { enabled?: boolean | undefined; workspace?: string | undefined; } | undefined; session?: { historyLimit?: number | undefined; dmHistoryLimit?: number | undefined; idleMinutes?: number | undefined; dailyResetHour?: number | undefined; compression?: "none" | "summary" | undefined; queuing?: "collect" | "concurrent" | "followup" | "sequential" | "steer" | undefined; } | undefined; bootstrap?: { files?: string[] | undefined; maxChars?: number | undefined; } | undefined; memory?: { enabled?: boolean | undefined; files?: string[] | undefined; } | undefined; }[] | undefined; channels?: { type: string; name: string; enabled?: boolean | undefined; config?: Record | undefined; access: { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }; }[] | undefined; bindings?: { agentId: string; channel: string; bindType: "account" | "channel" | "default" | "guild" | "peer" | "team"; bindValue: string; access: { dmPolicy?: "allowlist" | "open" | "pairing" | undefined; dmAllowlist?: string[] | undefined; groupPolicy?: "allowlist" | "mention" | "open" | undefined; groupAllowlist?: string[] | undefined; }; }[] | undefined; defaults?: { agent?: string | undefined; model?: { provider: string; model: string; } | undefined; } | undefined; }>; /** Type exports */ export type ChannelScope = z.infer; export type AccessControlPolicy = z.infer; export type ChannelBinding = z.infer; export type ChannelConfig = z.infer; export type AgentDefinition = z.infer; export type GatewayConfig = z.infer; export type NodeConfig = z.infer; export type PiagnetConfig = z.infer; export type PiagentConfig = PiagnetConfig; /** Default configuration */ export declare const defaultConfig: PiagnetConfig; /** Example configuration for documentation */ export declare const exampleConfig: PiagnetConfig; //# sourceMappingURL=schema.d.ts.map