109 lines
2.4 KiB
TypeScript
109 lines
2.4 KiB
TypeScript
|
|
import type { Node, Edge } from '@xyflow/react';
|
||
|
|
|
||
|
|
export interface ComponentItem {
|
||
|
|
id: string;
|
||
|
|
label: string;
|
||
|
|
category: string;
|
||
|
|
icon: string;
|
||
|
|
description: string;
|
||
|
|
color: string;
|
||
|
|
inputs?: string[];
|
||
|
|
outputs?: string[];
|
||
|
|
engines?: string[];
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface ChatMessage {
|
||
|
|
id: string;
|
||
|
|
agent: string;
|
||
|
|
content: string;
|
||
|
|
timestamp: Date;
|
||
|
|
type: 'user' | 'agent' | 'system';
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface TerminalEntry {
|
||
|
|
id: string;
|
||
|
|
timestamp: Date;
|
||
|
|
level: 'info' | 'warn' | 'error' | 'success';
|
||
|
|
source: string;
|
||
|
|
message: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface ValidationIssue {
|
||
|
|
id: string;
|
||
|
|
severity: 'error' | 'warning' | 'info';
|
||
|
|
node?: string;
|
||
|
|
field?: string;
|
||
|
|
message: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface AuditEntry {
|
||
|
|
id: string;
|
||
|
|
timestamp: Date;
|
||
|
|
user: string;
|
||
|
|
action: string;
|
||
|
|
detail: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface SettlementItem {
|
||
|
|
id: string;
|
||
|
|
txId: string;
|
||
|
|
status: 'pending' | 'in_review' | 'awaiting_approval' | 'dispatched' | 'partially_settled' | 'settled' | 'failed';
|
||
|
|
amount: string;
|
||
|
|
asset: string;
|
||
|
|
counterparty: string;
|
||
|
|
timestamp: Date;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface Notification {
|
||
|
|
id: string;
|
||
|
|
title: string;
|
||
|
|
message: string;
|
||
|
|
type: 'info' | 'success' | 'warning' | 'error';
|
||
|
|
timestamp: Date;
|
||
|
|
read: boolean;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface ThreadEntry {
|
||
|
|
id: string;
|
||
|
|
title: string;
|
||
|
|
agent: Agent;
|
||
|
|
timestamp: Date;
|
||
|
|
messageCount: number;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface TransactionTab {
|
||
|
|
id: string;
|
||
|
|
name: string;
|
||
|
|
nodes: Node[];
|
||
|
|
edges: Edge[];
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface HistoryEntry {
|
||
|
|
nodes: Node[];
|
||
|
|
edges: Edge[];
|
||
|
|
}
|
||
|
|
|
||
|
|
export type TransactionNode = Node<{
|
||
|
|
label: string;
|
||
|
|
category: string;
|
||
|
|
icon: string;
|
||
|
|
color: string;
|
||
|
|
status?: 'valid' | 'warning' | 'error';
|
||
|
|
}>;
|
||
|
|
|
||
|
|
export type TransactionEdge = Edge<{
|
||
|
|
animated?: boolean;
|
||
|
|
}>;
|
||
|
|
|
||
|
|
export type PanelSide = 'left' | 'right' | 'bottom';
|
||
|
|
|
||
|
|
export type SessionMode = 'Sandbox' | 'Simulate' | 'Live' | 'Compliance Review';
|
||
|
|
|
||
|
|
export type ActivityTab = 'builder' | 'assets' | 'templates' | 'compliance' | 'routes' | 'protocols' | 'agents' | 'terminal' | 'audit' | 'settings';
|
||
|
|
|
||
|
|
export type BottomTab = 'terminal' | 'validation' | '800system' | 'settlement' | 'audit' | 'messages' | 'events' | 'reconciliation' | 'exceptions';
|
||
|
|
|
||
|
|
export type Agent = 'Builder' | 'Compliance' | 'Routing' | 'ISO-20022' | 'Settlement' | 'Risk' | 'Documentation';
|
||
|
|
|
||
|
|
export type ConversationScope = 'current-node' | 'current-flow' | 'full-transaction' | 'terminal' | 'compliance';
|