index.d.cts 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import { Plugin } from 'vite';
  2. import { Awaitable } from '@antfu/utils';
  3. import { StackFrame } from 'error-stack-parser-es';
  4. import { O as Options } from './shared/vite-plugin-inspect.2cd7208c.cjs';
  5. import '@rollup/pluginutils';
  6. interface TransformInfo {
  7. name: string;
  8. result?: string;
  9. start: number;
  10. end: number;
  11. order?: string;
  12. sourcemaps?: any;
  13. error?: ParsedError;
  14. }
  15. interface ParsedError {
  16. message: string;
  17. stack: StackFrame[];
  18. raw?: any;
  19. }
  20. interface ModuleInfo {
  21. id: string;
  22. plugins: {
  23. name: string;
  24. transform?: number;
  25. resolveId?: number;
  26. }[];
  27. deps: string[];
  28. virtual: boolean;
  29. totalTime: number;
  30. invokeCount: number;
  31. sourceSize: number;
  32. distSize: number;
  33. }
  34. interface ModulesList {
  35. root: string;
  36. modules: ModuleInfo[];
  37. ssrModules: ModuleInfo[];
  38. }
  39. interface ModuleTransformInfo {
  40. resolvedId: string;
  41. transforms: TransformInfo[];
  42. }
  43. interface PluginMetricInfo {
  44. name: string;
  45. enforce?: string;
  46. transform: {
  47. invokeCount: number;
  48. totalTime: number;
  49. };
  50. resolveId: {
  51. invokeCount: number;
  52. totalTime: number;
  53. };
  54. }
  55. interface RPCFunctions {
  56. list: () => Awaitable<ModulesList>;
  57. getIdInfo: (id: string, ssr: boolean, clear?: boolean) => Awaitable<ModuleTransformInfo>;
  58. resolveId: (id: string, ssr: boolean) => Awaitable<string>;
  59. clear: (id: string, ssr: boolean) => Awaitable<void>;
  60. getPluginMetrics: (ssr: boolean) => Awaitable<PluginMetricInfo[]>;
  61. getServerMetrics: () => Awaitable<Record<string, Record<string, {
  62. name: string;
  63. self: number;
  64. total: number;
  65. }[]>>>;
  66. moduleUpdated: () => void;
  67. }
  68. interface ViteInspectAPI {
  69. rpc: RPCFunctions;
  70. }
  71. declare function PluginInspect(options?: Options): Plugin;
  72. declare namespace PluginInspect {
  73. var getViteInspectAPI: (plugins: Plugin[]) => ViteInspectAPI | undefined;
  74. }
  75. export { Options, type ViteInspectAPI, PluginInspect as default };