@meridianjs/types
v2.6.0
Published
Shared TypeScript types and interfaces for Meridian
Readme
@meridianjs/types
Shared TypeScript interfaces and types for the MeridianJS ecosystem. This package is a pure type declaration library — no runtime code, no dependencies.
Installation
npm install @meridianjs/typesOverview
All public contracts between MeridianJS packages live here. Consuming packages import from @meridianjs/types rather than from each other, keeping the dependency graph flat and preventing circular imports.
Exported Types
Container & DI
import type { MeridianContainer } from "@meridianjs/types"
// The DI container interface — resolve tokens, register values, create child scopes
interface MeridianContainer {
resolve<T = unknown>(token: string): T
register(registrations: Record<string, unknown>): void
createScope(): MeridianContainer
dispose?(): Promise<void>
}Module System
import type { ModuleDefinition, LoaderFn, LoaderOptions, LinkableConfig } from "@meridianjs/types"Configuration
import type { MeridianConfig, ProjectConfig, ModuleConfig, PluginConfig } from "@meridianjs/types"Event Bus
import type { IEventBus, EventMessage, SubscriberFn, SubscriberArgs, SubscriberConfig } from "@meridianjs/types"Scheduler
import type { IScheduler, ScheduledJobConfig } from "@meridianjs/types"HTTP / Auth
import type { AuthenticatedUser, MeridianRequestBase } from "@meridianjs/types"
// JWT payload shape attached to req.user
interface AuthenticatedUser {
id: string
workspaceId: string
roles: string[]
permissions: string[]
}Logger
import type { ILogger } from "@meridianjs/types"Domain Enums
import type {
IssueType, // "bug" | "feature" | "task" | "epic" | "story"
IssuePriority, // "urgent" | "high" | "medium" | "low" | "none"
SprintStatus, // "planned" | "active" | "completed"
ProjectVisibility,
WorkspacePlan,
} from "@meridianjs/types"Storage & Email
import type { IStorageProvider, IEmailService, EmailSendOptions } from "@meridianjs/types"Plugin System
import type { PluginRegistrationContext, PluginRegisterFn } from "@meridianjs/types"License
MIT
