107 lines
2.5 KiB
TypeScript
107 lines
2.5 KiB
TypeScript
/**
|
|
* @elly/shared — Public API barrel.
|
|
*
|
|
* Both `@elly/core` and `@elly/bot` import from here. This barrel is the only
|
|
* sanctioned cross-crate surface. Anything not re-exported is considered
|
|
* implementation detail and may change without notice.
|
|
*/
|
|
|
|
// ----- Config --------------------------------------------------------
|
|
export {
|
|
ApiSchema,
|
|
BotSchema,
|
|
ChannelsSchema,
|
|
ColorsSchema,
|
|
ConfigSchema,
|
|
DatabaseSchema,
|
|
FeaturesSchema,
|
|
GuildSchema,
|
|
IpcSchema,
|
|
KvSchema,
|
|
LimitsSchema,
|
|
LoggingSchema,
|
|
RolesSchema,
|
|
} from "./src/config/schema.ts";
|
|
export type { Config } from "./src/config/schema.ts";
|
|
export type {
|
|
ApiConfig,
|
|
BotConfig,
|
|
ChannelsConfig,
|
|
ColorsConfig,
|
|
ConfigInput,
|
|
DatabaseConfig,
|
|
FeaturesConfig,
|
|
GuildConfig,
|
|
IpcConfig,
|
|
KvConfig,
|
|
LimitsConfig,
|
|
LoggingConfig,
|
|
RolesConfig,
|
|
} from "./src/config/types.ts";
|
|
export { loadConfig, validateConfig } from "./src/config/loader.ts";
|
|
export {
|
|
BotEnvSchema,
|
|
CoreEnvSchema,
|
|
loadEnv,
|
|
SharedEnvSchema,
|
|
} from "./src/config/env.ts";
|
|
export type { BotEnv, CoreEnv, SharedEnv } from "./src/config/env.ts";
|
|
export {
|
|
ConfigError,
|
|
ConfigValidationError,
|
|
EnvValidationError,
|
|
} from "./src/config/errors.ts";
|
|
export type { ConfigValidationIssue } from "./src/config/errors.ts";
|
|
|
|
// ----- Logger --------------------------------------------------------
|
|
export { createConsoleLogger, createLogger } from "./src/logger/factory.ts";
|
|
export { LOG_LEVEL_ORDER } from "./src/logger/types.ts";
|
|
export type {
|
|
LogFileOptions,
|
|
Logger,
|
|
LoggerOptions,
|
|
LogLevel,
|
|
LogRecord,
|
|
} from "./src/logger/types.ts";
|
|
|
|
// ----- IPC contract --------------------------------------------------
|
|
export {
|
|
IPC_AUTH_HEADER,
|
|
IPC_REQUEST_ID_HEADER,
|
|
IpcRoutes,
|
|
} from "./src/ipc/routes.ts";
|
|
export type { IpcRoute } from "./src/ipc/routes.ts";
|
|
export {
|
|
IPC_ERROR_STATUS,
|
|
IpcError,
|
|
IpcErrorBodySchema,
|
|
IpcErrorCode,
|
|
} from "./src/ipc/errors.ts";
|
|
export type { IpcErrorBody } from "./src/ipc/errors.ts";
|
|
export {
|
|
AnyDomainEventSchema,
|
|
HeartbeatEventSchema,
|
|
ServerReadyEventSchema,
|
|
} from "./src/ipc/events.ts";
|
|
export type {
|
|
AnyDomainEvent,
|
|
BaseDomainEvent,
|
|
DomainEventType,
|
|
HeartbeatEvent,
|
|
ServerReadyEvent,
|
|
} from "./src/ipc/events.ts";
|
|
|
|
// ----- Util ----------------------------------------------------------
|
|
export {
|
|
err,
|
|
isErr,
|
|
isOk,
|
|
map,
|
|
mapErr,
|
|
ok,
|
|
tryCatch,
|
|
tryCatchAsync,
|
|
unwrap,
|
|
} from "./src/util/result.ts";
|
|
export type { Err, Ok, Result } from "./src/util/result.ts";
|