scriptSetupRanges.d.ts 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import type * as ts from 'typescript/lib/tsserverlibrary';
  2. import type { VueCompilerOptions, TextRange } from '../types';
  3. export interface ScriptSetupRanges extends ReturnType<typeof parseScriptSetupRanges> {
  4. }
  5. export declare function parseScriptSetupRanges(ts: typeof import('typescript/lib/tsserverlibrary'), ast: ts.SourceFile, vueCompilerOptions: VueCompilerOptions): {
  6. leadingCommentEndOffset: number;
  7. importSectionEndOffset: number;
  8. bindings: TextRange[];
  9. props: {
  10. name?: string | undefined;
  11. define?: (TextRange & {
  12. arg?: TextRange | undefined;
  13. typeArg?: TextRange | undefined;
  14. } & {
  15. statement: TextRange;
  16. }) | undefined;
  17. withDefaults?: (TextRange & {
  18. arg?: TextRange | undefined;
  19. }) | undefined;
  20. };
  21. slots: {
  22. name?: string | undefined;
  23. define?: (TextRange & {
  24. arg?: TextRange | undefined;
  25. typeArg?: TextRange | undefined;
  26. }) | undefined;
  27. };
  28. emits: {
  29. name?: string | undefined;
  30. define?: (TextRange & {
  31. arg?: TextRange | undefined;
  32. typeArg?: TextRange | undefined;
  33. }) | undefined;
  34. };
  35. expose: {
  36. name?: string | undefined;
  37. define?: (TextRange & {
  38. arg?: TextRange | undefined;
  39. typeArg?: TextRange | undefined;
  40. }) | undefined;
  41. };
  42. defineProp: {
  43. name: TextRange | undefined;
  44. nameIsString: boolean;
  45. type: TextRange | undefined;
  46. defaultValue: TextRange | undefined;
  47. required: boolean;
  48. }[];
  49. };
  50. export declare function parseBindingRanges(ts: typeof import('typescript/lib/tsserverlibrary'), sourceFile: ts.SourceFile): TextRange[];
  51. export declare function findBindingVars(ts: typeof import('typescript/lib/tsserverlibrary'), left: ts.BindingName, sourceFile: ts.SourceFile): TextRange[];
  52. export declare function getStartEnd(node: ts.Node, sourceFile: ts.SourceFile): {
  53. start: number;
  54. end: number;
  55. };
  56. //# sourceMappingURL=scriptSetupRanges.d.ts.map