add ticket types

This commit is contained in:
nflnkr 2023-03-20 18:25:59 +03:00
parent 88d696f53e
commit 30842c6412

66
src/model/ticket.ts Normal file

@ -0,0 +1,66 @@
export interface CreateTicketRequest {
Title: string;
Message: string;
};
export interface CreateTicketResponse {
Ticket: string;
};
export interface SendTicketMessageRequest {
message: string;
ticket: string;
lang: string;
files: string[];
};
export type TicketStatus = "open"; // TODO
export interface GetTicketsRequest {
amt: number;
/** Пагинация начинается с индекса 0 */
page: number;
srch?: string;
status?: TicketStatus;
};
export interface GetTicketsResponse {
count: number;
data: Ticket[];
};
export interface Ticket {
id: string;
user: string;
sess: string;
ans: string;
state: string;
top_message: TicketMessage;
title: string;
created_at: string;
updated_at: string;
rate: number;
};
export interface TicketMessage {
id: string;
ticket_id: string;
user_id: string,
session_id: string;
message: string;
files: string[],
shown: { [key: string]: number; },
request_screenshot: string,
created_at: string;
};
export interface GetMessagesRequest {
amt: number;
page: number;
srch: string;
ticket: string;
};
export type GetMessagesResponse = TicketMessage[];