mcp-decisive
Version:
MCP server for WRAP decision-making framework with structured output
79 lines • 2.42 kB
TypeScript
import { Result } from 'neverthrow';
/**
* Issue Definition Term Model Implementation
*
* This demonstrates the Term Model pattern for Domain-Driven Design:
* - Domain vocabulary as executable code
* - Smart constructors with validation
* - Immutable value objects
* - Business rule enforcement
* - Type-safe domain modeling
*/
/**
* Term types in this domain:
* - value: Value objects and identifiers
*/
/**
* 語彙「IssueText」
* domain type: value
*/
type IssueText = string & {
readonly _brand: 'IssueText';
};
declare const IssueText: {
readonly create: (value: string) => Result<IssueText, ValidationError[]>;
readonly toString: (issueText: IssueText) => string;
};
/**
* 語彙「ContextText」
* domain type: value
*/
type ContextText = string & {
readonly _brand: 'ContextText';
};
declare const ContextText: {
readonly create: (value: string) => Result<ContextText, ValidationError[]>;
readonly toString: (contextText: ContextText) => string;
};
/**
* 語彙「ConstraintText」
* domain type: value
*/
type ConstraintText = string & {
readonly _brand: 'ConstraintText';
};
declare const ConstraintText: {
readonly create: (value: string) => Result<ConstraintText, ValidationError[]>;
readonly toString: (constraintText: ConstraintText) => string;
};
type ValidationError = {
readonly type: 'required' | 'too_short' | 'too_long' | 'invalid_type';
readonly field: string;
readonly message: string;
};
declare const ValidationError: {
readonly create: (type: ValidationError["type"], field: string, message: string) => ValidationError;
};
/**
* Value Object Constructors
*/
export declare const Values: {
readonly IssueText: {
readonly create: (value: string) => Result<IssueText, ValidationError[]>;
readonly toString: (issueText: IssueText) => string;
};
readonly ContextText: {
readonly create: (value: string) => Result<ContextText, ValidationError[]>;
readonly toString: (contextText: ContextText) => string;
};
readonly ConstraintText: {
readonly create: (value: string) => Result<ConstraintText, ValidationError[]>;
readonly toString: (constraintText: ConstraintText) => string;
};
};
export { IssueText, ContextText, ConstraintText };
/**
* Type Exports for External Use
*/
export type { ValidationError };
//# sourceMappingURL=issue-definition.d.ts.map