/** * @module constants/limits * @description Protocol size limits, version constants, and enum numeric values. * * All values mirror the on-chain Rust constraints exactly. * Used for client-side validation before sending transactions. * * @category Constants * @since v0.1.0 */ /** * Protocol size constraints mirroring the Rust `impl` blocks. * * Use these values for client-side validation before submitting * transactions — exceeding any limit will cause an on-chain error. * * @name LIMITS * @description A frozen object containing all protocol-enforced size and length bounds. * @category Constants * @since v0.1.0 * @example * ```ts * import { LIMITS } from "@synapse-sap/sdk/constants"; * * if (name.length > LIMITS.MAX_NAME_LEN) { * throw new Error("Agent name too long"); * } * ``` */ export declare const LIMITS: { /** Max agent name length in bytes. */ readonly MAX_NAME_LEN: 64; /** Max agent description length in bytes. */ readonly MAX_DESC_LEN: 256; /** Max URI length (agent_uri, x402_endpoint). */ readonly MAX_URI_LEN: 256; /** Max agent DID-style identifier length. */ readonly MAX_AGENT_ID_LEN: 128; /** Max capabilities per agent. */ readonly MAX_CAPABILITIES: 10; /** Max pricing tiers per agent. */ readonly MAX_PRICING_TIERS: 5; /** Max protocol strings per agent. */ readonly MAX_PROTOCOLS: 5; /** Max active plugins per agent. */ readonly MAX_PLUGINS: 5; /** Max volume curve breakpoints per tier. */ readonly MAX_VOLUME_CURVE_POINTS: 5; /** Max feedback tag length. */ readonly MAX_TAG_LEN: 32; /** Max agents in a capability/protocol index. */ readonly MAX_AGENTS_PER_INDEX: 100; /** Max tool name length. */ readonly MAX_TOOL_NAME_LEN: 32; /** Max tools in a category index. */ readonly MAX_TOOLS_PER_CATEGORY: 100; /** Max attestation type length. */ readonly MAX_ATTESTATION_TYPE_LEN: 32; /** Max inscription size (encrypted_data per fragment). */ readonly MAX_INSCRIPTION_SIZE: 750; /** Inscriptions per epoch page. */ readonly INSCRIPTIONS_PER_EPOCH: 1000; /** Max memory chunk size (legacy). */ readonly MAX_CHUNK_SIZE: 900; /** Max write size per buffer append (legacy). */ readonly MAX_BUFFER_WRITE_SIZE: 750; /** Max total buffer page size (legacy). */ readonly MAX_BUFFER_TOTAL_SIZE: 10000; /** Ring buffer capacity for MemoryLedger. */ readonly RING_CAPACITY: 4096; /** Max ledger write size per call. */ readonly MAX_LEDGER_WRITE_SIZE: 750; /** Max settlements in a batch. */ readonly MAX_BATCH_SETTLEMENTS: 10; /** Feedback score range: 0–1000. */ readonly MAX_FEEDBACK_SCORE: 1000; }; /** * Current on-chain protocol version for `AgentAccount`. * * @name AGENT_VERSION * @description Integer version stamped into every agent account on registration. * @category Constants * @since v0.1.0 */ export declare const AGENT_VERSION = 1; /** * Current on-chain protocol version for `MemoryVault`. * * @name VAULT_PROTOCOL_VERSION * @description Integer version stamped into every vault account on initialisation. * @category Constants * @since v0.1.0 */ export declare const VAULT_PROTOCOL_VERSION = 1; /** * Tool category to `u8` discriminant mapping. * * Mirrors the Rust `ToolCategory` enum ordinals. Use these values * when constructing or filtering tool-related instructions. * * @name TOOL_CATEGORY_VALUES * @description Frozen mapping of tool category names to their on-chain `u8` discriminants. * @category Constants * @since v0.1.0 * @example * ```ts * import { TOOL_CATEGORY_VALUES } from "@synapse-sap/sdk/constants"; * * const categoryByte = TOOL_CATEGORY_VALUES.Swap; // 0 * ``` */ export declare const TOOL_CATEGORY_VALUES: { readonly Swap: 0; readonly Lend: 1; readonly Stake: 2; readonly Nft: 3; readonly Payment: 4; readonly Data: 5; readonly Governance: 6; readonly Bridge: 7; readonly Analytics: 8; readonly Custom: 9; }; /** * HTTP method to `u8` discriminant mapping. * * Mirrors the Rust `HttpMethod` enum ordinals. Used when publishing * or filtering tool endpoints. * * @name HTTP_METHOD_VALUES * @description Frozen mapping of HTTP method names to their on-chain `u8` discriminants. * @category Constants * @since v0.1.0 * @example * ```ts * import { HTTP_METHOD_VALUES } from "@synapse-sap/sdk/constants"; * * const method = HTTP_METHOD_VALUES.Post; // 1 * ``` */ export declare const HTTP_METHOD_VALUES: { readonly Get: 0; readonly Post: 1; readonly Put: 2; readonly Delete: 3; readonly Compound: 4; }; //# sourceMappingURL=limits.d.ts.map