- Introduced new TypeScript types for catalog products, including Internet, SIM, and VPN plans, along with their respective addons and installation options. - Created a new domain package with essential configurations, including package.json and tsconfig.json for TypeScript support. - Added common types and utility functions for type safety and data handling across the application. - Established a structured export pattern for domain types, enhancing organization and accessibility for future development.
47 lines
967 B
TypeScript
47 lines
967 B
TypeScript
// Support case types from Salesforce
|
|
import type { CaseStatus, CasePriority } from "./status";
|
|
export type CaseType = "Question" | "Problem" | "Feature Request";
|
|
|
|
export interface SupportCase {
|
|
id: string;
|
|
number: string;
|
|
subject: string;
|
|
description?: string;
|
|
status: CaseStatus;
|
|
priority: CasePriority;
|
|
type: CaseType;
|
|
createdDate: string; // ISO
|
|
lastModifiedDate: string; // ISO
|
|
closedDate?: string; // ISO
|
|
contactId?: string;
|
|
accountId?: string;
|
|
ownerId?: string;
|
|
ownerName?: string;
|
|
comments?: CaseComment[];
|
|
}
|
|
|
|
export interface CaseComment {
|
|
id: string;
|
|
body: string;
|
|
isPublic: boolean;
|
|
createdDate: string; // ISO
|
|
createdBy: {
|
|
id: string;
|
|
name: string;
|
|
type: "user" | "customer";
|
|
};
|
|
}
|
|
|
|
export interface CreateCaseRequest {
|
|
subject: string;
|
|
description: string;
|
|
type?: string;
|
|
priority?: string;
|
|
}
|
|
|
|
export interface CaseList {
|
|
cases: SupportCase[];
|
|
totalCount: number;
|
|
nextCursor?: string;
|
|
}
|