tangweijie 5099f2e87e Initial commit: Vue3 + TypeScript 前端项目
- Vue 3 + TypeScript + Element Plus 前端界面
- Pinia 状态管理
- Vue Router 4 路由管理
- Axios HTTP 客户端
- MSW (Mock Service Worker) 开发环境模拟
- 账户管理界面 (列表、详情、三科目余额展示)
- 交易管理界面 (列表、详情)
- 对账管理界面 (三账校验)
- 完善的 API 客户端封装
- Docker 容器化配置
- Nginx 配置用于生产环境
2026-01-05 17:57:11 +08:00

65 lines
1.7 KiB
TypeScript

import { Emitter } from 'strict-event-emitter';
import { UnhandledRequestStrategy } from './utils/request/onUnhandledRequest.mjs';
interface SharedOptions {
/**
* Specifies how to react to a request that has no corresponding
* request handler. Warns on unhandled requests by default.
*
* @example worker.start({ onUnhandledRequest: 'bypass' })
* @example worker.start({ onUnhandledRequest: 'warn' })
* @example server.listen({ onUnhandledRequest: 'error' })
*/
onUnhandledRequest?: UnhandledRequestStrategy;
}
type LifeCycleEventsMap = {
'request:start': [
args: {
request: Request;
requestId: string;
}
];
'request:match': [
args: {
request: Request;
requestId: string;
}
];
'request:unhandled': [
args: {
request: Request;
requestId: string;
}
];
'request:end': [
args: {
request: Request;
requestId: string;
}
];
'response:mocked': [
args: {
response: Response;
request: Request;
requestId: string;
}
];
'response:bypass': [
args: {
response: Response;
request: Request;
requestId: string;
}
];
unhandledException: [
args: {
error: Error;
request: Request;
requestId: string;
}
];
};
type LifeCycleEventEmitter<EventsMap extends Record<string | symbol, any>> = Pick<Emitter<EventsMap>, 'on' | 'removeListener' | 'removeAllListeners'>;
export type { LifeCycleEventEmitter, LifeCycleEventsMap, SharedOptions };