UNPKG

@memory-bank/mcp

Version:

Memory-enabled Co-Pilot (MCP) server for managing project documentation and context

65 lines 2 kB
/** * Translation Domain Model * * Represents a localized text for a specific language with variable substitution capabilities. * Implements value object pattern - immutable and equality based on value. */ import { Language } from './Language.js'; /** * Translation key type - identifies a specific translatable string */ export type TranslationKey = string; /** * Translation class represents a localized text in a specific language */ export declare class Translation { private readonly _language; private readonly _key; private readonly _text; /** * Constructor with validation * * @param language Language instance * @param key Translation key * @param text Translated text * @throws Error if key or text is empty */ constructor(language: Language, key: TranslationKey, text: string); /** * Gets the language */ get language(): Language; /** * Gets the translation key */ get key(): TranslationKey; /** * Gets the translated text */ get text(): string; /** * Creates a Translation instance, validating inputs * * @param language Language instance * @param key Translation key * @param text Translated text * @returns Translation instance * @throws Error if key or text is empty */ static create(language: Language, key: TranslationKey, text: string): Translation; /** * Creates a new Translation with variables replaced in the text * * @param variables Object with variable names and their values * @returns New Translation instance with replaced variables */ withReplacedVariables(variables: Record<string, string>): Translation; /** * Compare equality with another Translation object * * @param other Another Translation object to compare * @returns true if equal, false otherwise */ equals(other: Translation): boolean; } //# sourceMappingURL=Translation.d.ts.map