Files
Shifted/node_modules/react-docgen/dist/FileState.d.ts
2026-02-10 01:14:19 +00:00

32 lines
1.1 KiB
TypeScript

import type { HubInterface, Scope, Visitor } from '@babel/traverse';
import { NodePath } from '@babel/traverse';
import type { File, Program } from '@babel/types';
import type { Importer, ImportPath } from './importer/index.js';
import type { TransformOptions } from '@babel/core';
export default class FileState {
#private;
opts: TransformOptions;
path: NodePath<Program>;
ast: File;
scope: Scope;
code: string;
hub: HubInterface;
constructor(options: TransformOptions, { code, ast, importer }: {
code: string;
ast: File;
importer: Importer;
});
/**
* Try to resolve and import the ImportPath with the `name`
*/
import(path: ImportPath, name: string): NodePath | null;
/**
* Parse the content of a new file
* The `filename` is required so that potential imports inside the content can be correctly resolved and
* the correct babel config file could be loaded. `filename` needs to be an absolute path.
*/
parse(code: string, filename: string): FileState;
traverse<S>(visitors: Visitor<S>, state?: S): void;
traverse(visitors: Visitor): void;
}