import config from "../../config/index.js"; export const packedFederationInstanceSchema = { type: "object", properties: { id: { type: "string", optional: false, nullable: false, format: "id" }, caughtAt: { type: "string", optional: false, nullable: false, format: "date-time" }, host: { type: "string", optional: false, nullable: false, example: "iceshrimp.example.com" }, usersCount: { type: "number", optional: false, nullable: false }, notesCount: { type: "number", optional: false, nullable: false }, followingCount: { type: "number", optional: false, nullable: false }, followersCount: { type: "number", optional: false, nullable: false }, latestRequestSentAt: { type: "string", optional: false, nullable: true, format: "date-time" }, lastCommunicatedAt: { type: "string", optional: false, nullable: false, format: "date-time" }, isNotResponding: { type: "boolean", optional: false, nullable: false }, isSuspended: { type: "boolean", optional: false, nullable: false }, isBlocked: { type: "boolean", optional: false, nullable: false }, isSilenced: { type: "boolean", optional: false, nullable: false }, softwareName: { type: "string", optional: false, nullable: true, example: "iceshrimp" }, softwareVersion: { type: "string", optional: false, nullable: true, example: config.version }, openRegistrations: { type: "boolean", optional: false, nullable: true, example: true }, name: { type: "string", optional: false, nullable: true }, description: { type: "string", optional: false, nullable: true }, maintainerName: { type: "string", optional: false, nullable: true }, maintainerEmail: { type: "string", optional: false, nullable: true }, iconUrl: { type: "string", optional: false, nullable: true, format: "url" }, faviconUrl: { type: "string", optional: false, nullable: true, format: "url" }, themeColor: { type: "string", optional: false, nullable: true }, infoUpdatedAt: { type: "string", optional: false, nullable: true, format: "date-time" } } };