You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
1.2 KiB

/**
*
*/
/**
* API
*/
export interface ApiResponse<T = any> {
code: number;
message: string;
data: T;
timestamp?: number;
}
/**
*
*/
export interface PaginationParams {
page: number;
pageSize: number;
sortBy?: string;
sortOrder?: 'asc' | 'desc';
}
/**
*
*/
export interface PaginatedResponse<T> {
items: T[];
total: number;
page: number;
pageSize: number;
totalPages: number;
}
/**
*
*/
export interface ErrorResponse {
code: number;
message: string;
errors?: Record<string, string[]>;
}
/**
*
*/
export interface UploadResponse {
url: string;
filename: string;
size: number;
mimeType: string;
}
/**
*
*/
export type RootStackParamList = {
Home: undefined;
Profile: { userId: string };
Settings: undefined;
Login: undefined;
Register: undefined;
// 添加更多路由...
};
/**
*
*/
declare global {
namespace NodeJS {
interface ProcessEnv {
EXPO_PUBLIC_API_URL: string;
EXPO_PUBLIC_APP_NAME: string;
EXPO_PUBLIC_APP_VERSION: string;
}
}
}
export {};