Files
sage-mcp-server/src/types/sage.ts

83 lines
1.5 KiB
TypeScript

export interface SageConfig {
url: string;
user: string;
password: string;
endpoint: string;
poolAlias: string;
language: string;
rejectUnauthorized: boolean;
}
export interface RestQueryOptions {
entity: string;
representation?: string;
where?: string;
orderBy?: string;
count?: number;
nextUrl?: string;
select?: string;
}
export interface RestQueryResult {
records: unknown[];
pagination: {
returned: number;
hasMore: boolean;
nextUrl?: string;
};
}
export interface RestDetailResult {
record: unknown;
}
export interface SoapCallContext {
codeLang: string;
poolAlias: string;
poolId: string;
requestConfig: string;
}
export interface SoapReadOptions {
publicName: string;
objectName?: string;
key: Record<string, string>;
}
export interface SoapQueryOptions {
publicName: string;
objectName?: string;
listSize?: number;
inputXml?: string;
}
export interface SoapResult {
status: number;
data: unknown;
messages: SoapMessage[];
technicalInfos: SoapTechInfo[];
}
export interface SoapMessage {
type: number;
message: string;
}
export interface SoapTechInfo {
type: string;
message: string;
}
export interface ToolResponse {
records?: unknown[];
record?: unknown;
pagination?: { returned: number; hasMore: boolean; nextUrl?: string };
error?: string;
hint?: string;
}
export interface HealthStatus {
rest: { status: string; latencyMs: number; endpoint: string };
soap: { status: string; latencyMs: number; poolAlias: string };
}