UNPKG

@artinet/metadata-validator

Version:
128 lines (127 loc) 3.15 kB
/** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ /** * JSON Schema for Artinet Registrations */ export interface RegistrationSchema { /** * Version of the registration schema */ schemaVersion: string; /** * Human-readable name of the service */ serviceName: string; /** * Brief description of the service's functionality */ description: string; /** * Version of the service (semantic versioning) */ version: string; /** * List of functionalities or features provided by the service * * @maxItems 5 */ capabilities: [] | [string] | [string, string] | [string, string, string] | [string, string, string, string] | [string, string, string, string, string]; communication: { endpoints: { url: string; type?: string; authentication?: boolean; description?: string; /** * Additional endpoint-specific metadata */ metadata?: { [k: string]: unknown; }; /** * List of protocols supported by the endpoint */ protocols?: string[]; additionalProperties?: unknown; [k: string]: unknown; }[]; /** * Custom communication configurations */ custom?: { [k: string]: unknown; }; [k: string]: unknown; }; /** * List of tags for the service */ tags?: string[]; license?: string; registrationDate?: string; /** * Additional service-specific metadata */ metadata?: { [k: string]: unknown; }; /** * Optional billing information for the service */ billing?: { /** * Ethereum address for billing purposes */ walletAddress?: string; /** * Network identifier for the wallet address */ network?: string; /** * Preferred payment currency */ currency?: string; /** * Accepted payment methods */ paymentMethods?: ("ETH" | "ERC20" | "FIAT" | "OTHER")[]; /** * Additional billing-specific information */ customBillingInfo?: { [k: string]: unknown; }; [k: string]: unknown; }; publicKey?: { kty?: "RSA"; /** * RSA modulus */ n: string; /** * RSA public exponent */ e: string; [k: string]: unknown; } | { kty?: "EC"; /** * Curve type for EC keys */ crv: "P-256" | "P-384" | "P-521" | "secp256k1"; /** * X coordinate for EC keys */ x: string; /** * Y coordinate for EC keys */ y: string; [k: string]: unknown; }; [k: string]: unknown; }