37 lines
742 B
TypeScript
37 lines
742 B
TypeScript
|
|
// Carried schemas from any request and response
|
|
|
|
// Common request parameters interface
|
|
export interface RequestParams {
|
|
page: number;
|
|
size: number;
|
|
orderField: string[];
|
|
orderType: string[];
|
|
query: Record<string, any>;
|
|
}
|
|
|
|
// Common response metadata interface
|
|
export interface ResponseMetadata {
|
|
totalCount: number;
|
|
totalItems: number;
|
|
totalPages: number;
|
|
pageCount: number;
|
|
allCount?: number;
|
|
next: boolean;
|
|
back: boolean;
|
|
}
|
|
|
|
// Generic API response interface
|
|
export interface ApiResponse<T> {
|
|
data: T[];
|
|
metadata: ResponseMetadata;
|
|
}
|
|
|
|
// Pagination state interface
|
|
export interface PagePagination {
|
|
page: number;
|
|
size: number;
|
|
orderField: string[];
|
|
orderType: string[];
|
|
query: Record<string, any>;
|
|
} |