types.d.ts 30 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744
  1. /*
  2. * This file was automatically generated.
  3. * DO NOT MODIFY BY HAND.
  4. * Run `yarn fix:special` to update
  5. */
  6. import { Buffer } from "buffer";
  7. import { AsyncSeriesBailHook, AsyncSeriesHook, SyncHook } from "tapable";
  8. import { URL as URL_Import } from "url";
  9. declare interface Abortable {
  10. /**
  11. * When provided the corresponding `AbortController` can be used to cancel an asynchronous action.
  12. */
  13. signal?: AbortSignal;
  14. }
  15. type Alias = string | false | string[];
  16. declare interface AliasOption {
  17. alias: Alias;
  18. name: string;
  19. onlyModule?: boolean;
  20. }
  21. type AliasOptionNewRequest = string | false | string[];
  22. declare interface AliasOptions {
  23. [index: string]: AliasOptionNewRequest;
  24. }
  25. type BaseFileSystem = FileSystem & SyncFileSystem;
  26. declare interface BaseResolveRequest {
  27. /**
  28. * path
  29. */
  30. path: string | false;
  31. /**
  32. * content
  33. */
  34. context?: Context;
  35. /**
  36. * description file path
  37. */
  38. descriptionFilePath?: string;
  39. /**
  40. * description file root
  41. */
  42. descriptionFileRoot?: string;
  43. /**
  44. * description file data
  45. */
  46. descriptionFileData?: JsonObject;
  47. /**
  48. * tsconfig paths map
  49. */
  50. tsconfigPathsMap?: null | TsconfigPathsMap;
  51. /**
  52. * relative path
  53. */
  54. relativePath?: string;
  55. /**
  56. * true when need to ignore symlinks, otherwise false
  57. */
  58. ignoreSymlinks?: boolean;
  59. /**
  60. * true when full specified, otherwise false
  61. */
  62. fullySpecified?: boolean;
  63. /**
  64. * inner request for internal usage
  65. */
  66. __innerRequest?: string;
  67. /**
  68. * inner request for internal usage
  69. */
  70. __innerRequest_request?: string;
  71. /**
  72. * inner relative path for internal usage
  73. */
  74. __innerRequest_relativePath?: string;
  75. }
  76. type BufferEncoding =
  77. | "ascii"
  78. | "utf8"
  79. | "utf-8"
  80. | "utf16le"
  81. | "utf-16le"
  82. | "ucs2"
  83. | "ucs-2"
  84. | "base64"
  85. | "base64url"
  86. | "latin1"
  87. | "binary"
  88. | "hex";
  89. type BufferEncodingOption = "buffer" | { encoding: "buffer" };
  90. declare interface Cache {
  91. [index: string]: undefined | ResolveRequest | ResolveRequest[];
  92. }
  93. declare class CachedInputFileSystem {
  94. constructor(fileSystem: BaseFileSystem, duration: number);
  95. fileSystem: BaseFileSystem;
  96. lstat?: LStat;
  97. lstatSync?: LStatSync;
  98. stat: Stat;
  99. statSync: StatSync;
  100. readdir: Readdir;
  101. readdirSync: ReaddirSync;
  102. readFile: ReadFile;
  103. readFileSync: ReadFileSync;
  104. readJson?: (
  105. pathOrFileDescription: PathOrFileDescriptor,
  106. callback: (
  107. err: null | Error | NodeJS.ErrnoException,
  108. result?: JsonObject,
  109. ) => void,
  110. ) => void;
  111. readJsonSync?: (pathOrFileDescription: PathOrFileDescriptor) => JsonObject;
  112. readlink: Readlink;
  113. readlinkSync: ReadlinkSync;
  114. realpath?: RealPath;
  115. realpathSync?: RealPathSync;
  116. purge(
  117. what?:
  118. | string
  119. | number
  120. | Buffer
  121. | URL_url
  122. | (string | number | Buffer | URL_url)[]
  123. | Set<string | number | Buffer | URL_url>,
  124. ): void;
  125. }
  126. declare class CloneBasenamePlugin {
  127. constructor(
  128. source:
  129. | string
  130. | AsyncSeriesBailHook<
  131. [ResolveRequest, ResolveContext],
  132. null | ResolveRequest
  133. >,
  134. target:
  135. | string
  136. | AsyncSeriesBailHook<
  137. [ResolveRequest, ResolveContext],
  138. null | ResolveRequest
  139. >,
  140. );
  141. source:
  142. | string
  143. | AsyncSeriesBailHook<
  144. [ResolveRequest, ResolveContext],
  145. null | ResolveRequest
  146. >;
  147. target:
  148. | string
  149. | AsyncSeriesBailHook<
  150. [ResolveRequest, ResolveContext],
  151. null | ResolveRequest
  152. >;
  153. apply(resolver: Resolver): void;
  154. }
  155. type Context = KnownContext & Record<any, any>;
  156. declare interface Dirent<T extends string | Buffer = string> {
  157. /**
  158. * true when is file, otherwise false
  159. */
  160. isFile: () => boolean;
  161. /**
  162. * true when is directory, otherwise false
  163. */
  164. isDirectory: () => boolean;
  165. /**
  166. * true when is block device, otherwise false
  167. */
  168. isBlockDevice: () => boolean;
  169. /**
  170. * true when is character device, otherwise false
  171. */
  172. isCharacterDevice: () => boolean;
  173. /**
  174. * true when is symbolic link, otherwise false
  175. */
  176. isSymbolicLink: () => boolean;
  177. /**
  178. * true when is FIFO, otherwise false
  179. */
  180. isFIFO: () => boolean;
  181. /**
  182. * true when is socket, otherwise false
  183. */
  184. isSocket: () => boolean;
  185. /**
  186. * name
  187. */
  188. name: T;
  189. /**
  190. * path
  191. */
  192. parentPath: string;
  193. /**
  194. * path
  195. */
  196. path?: string;
  197. }
  198. type EncodingOption =
  199. | undefined
  200. | null
  201. | "ascii"
  202. | "utf8"
  203. | "utf-8"
  204. | "utf16le"
  205. | "utf-16le"
  206. | "ucs2"
  207. | "ucs-2"
  208. | "base64"
  209. | "base64url"
  210. | "latin1"
  211. | "binary"
  212. | "hex"
  213. | ObjectEncodingOptions;
  214. type ErrorWithDetail = Error & { details?: string };
  215. declare interface ExtensionAliasOption {
  216. alias: string | string[];
  217. extension: string;
  218. }
  219. declare interface ExtensionAliasOptions {
  220. [index: string]: string | string[];
  221. }
  222. declare interface FileSystem {
  223. /**
  224. * read file method
  225. */
  226. readFile: ReadFile;
  227. /**
  228. * readdir method
  229. */
  230. readdir: Readdir;
  231. /**
  232. * read json method
  233. */
  234. readJson?: (
  235. pathOrFileDescription: PathOrFileDescriptor,
  236. callback: (
  237. err: null | Error | NodeJS.ErrnoException,
  238. result?: JsonObject,
  239. ) => void,
  240. ) => void;
  241. /**
  242. * read link method
  243. */
  244. readlink: Readlink;
  245. /**
  246. * lstat method
  247. */
  248. lstat?: LStat;
  249. /**
  250. * stat method
  251. */
  252. stat: Stat;
  253. /**
  254. * realpath method
  255. */
  256. realpath?: RealPath;
  257. }
  258. type IBigIntStats = IStatsBase<bigint> & {
  259. atimeNs: bigint;
  260. mtimeNs: bigint;
  261. ctimeNs: bigint;
  262. birthtimeNs: bigint;
  263. };
  264. declare interface IStats {
  265. /**
  266. * is file
  267. */
  268. isFile: () => boolean;
  269. /**
  270. * is directory
  271. */
  272. isDirectory: () => boolean;
  273. /**
  274. * is block device
  275. */
  276. isBlockDevice: () => boolean;
  277. /**
  278. * is character device
  279. */
  280. isCharacterDevice: () => boolean;
  281. /**
  282. * is symbolic link
  283. */
  284. isSymbolicLink: () => boolean;
  285. /**
  286. * is FIFO
  287. */
  288. isFIFO: () => boolean;
  289. /**
  290. * is socket
  291. */
  292. isSocket: () => boolean;
  293. /**
  294. * dev
  295. */
  296. dev: number;
  297. /**
  298. * ino
  299. */
  300. ino: number;
  301. /**
  302. * mode
  303. */
  304. mode: number;
  305. /**
  306. * nlink
  307. */
  308. nlink: number;
  309. /**
  310. * uid
  311. */
  312. uid: number;
  313. /**
  314. * gid
  315. */
  316. gid: number;
  317. /**
  318. * rdev
  319. */
  320. rdev: number;
  321. /**
  322. * size
  323. */
  324. size: number;
  325. /**
  326. * blksize
  327. */
  328. blksize: number;
  329. /**
  330. * blocks
  331. */
  332. blocks: number;
  333. /**
  334. * atime ms
  335. */
  336. atimeMs: number;
  337. /**
  338. * mtime ms
  339. */
  340. mtimeMs: number;
  341. /**
  342. * ctime ms
  343. */
  344. ctimeMs: number;
  345. /**
  346. * birthtime ms
  347. */
  348. birthtimeMs: number;
  349. /**
  350. * atime
  351. */
  352. atime: Date;
  353. /**
  354. * mtime
  355. */
  356. mtime: Date;
  357. /**
  358. * ctime
  359. */
  360. ctime: Date;
  361. /**
  362. * birthtime
  363. */
  364. birthtime: Date;
  365. }
  366. declare interface IStatsBase<T> {
  367. /**
  368. * is file
  369. */
  370. isFile: () => boolean;
  371. /**
  372. * is directory
  373. */
  374. isDirectory: () => boolean;
  375. /**
  376. * is block device
  377. */
  378. isBlockDevice: () => boolean;
  379. /**
  380. * is character device
  381. */
  382. isCharacterDevice: () => boolean;
  383. /**
  384. * is symbolic link
  385. */
  386. isSymbolicLink: () => boolean;
  387. /**
  388. * is FIFO
  389. */
  390. isFIFO: () => boolean;
  391. /**
  392. * is socket
  393. */
  394. isSocket: () => boolean;
  395. /**
  396. * dev
  397. */
  398. dev: T;
  399. /**
  400. * ino
  401. */
  402. ino: T;
  403. /**
  404. * mode
  405. */
  406. mode: T;
  407. /**
  408. * nlink
  409. */
  410. nlink: T;
  411. /**
  412. * uid
  413. */
  414. uid: T;
  415. /**
  416. * gid
  417. */
  418. gid: T;
  419. /**
  420. * rdev
  421. */
  422. rdev: T;
  423. /**
  424. * size
  425. */
  426. size: T;
  427. /**
  428. * blksize
  429. */
  430. blksize: T;
  431. /**
  432. * blocks
  433. */
  434. blocks: T;
  435. /**
  436. * atime ms
  437. */
  438. atimeMs: T;
  439. /**
  440. * mtime ms
  441. */
  442. mtimeMs: T;
  443. /**
  444. * ctime ms
  445. */
  446. ctimeMs: T;
  447. /**
  448. * birthtime ms
  449. */
  450. birthtimeMs: T;
  451. /**
  452. * atime
  453. */
  454. atime: Date;
  455. /**
  456. * mtime
  457. */
  458. mtime: Date;
  459. /**
  460. * ctime
  461. */
  462. ctime: Date;
  463. /**
  464. * birthtime
  465. */
  466. birthtime: Date;
  467. }
  468. declare interface Iterator<T, Z> {
  469. (
  470. item: T,
  471. callback: (err?: null | Error, result?: null | Z) => void,
  472. i: number,
  473. ): void;
  474. }
  475. declare interface JsonObject {
  476. [index: string]:
  477. | undefined
  478. | null
  479. | string
  480. | number
  481. | boolean
  482. | JsonObject
  483. | JsonValue[];
  484. }
  485. type JsonValue = null | string | number | boolean | JsonObject | JsonValue[];
  486. declare interface KnownContext {
  487. /**
  488. * environments
  489. */
  490. environments?: string[];
  491. }
  492. declare interface KnownHooks {
  493. /**
  494. * resolve step hook
  495. */
  496. resolveStep: SyncHook<
  497. [
  498. AsyncSeriesBailHook<
  499. [ResolveRequest, ResolveContext],
  500. null | ResolveRequest
  501. >,
  502. ResolveRequest,
  503. ]
  504. >;
  505. /**
  506. * no resolve hook
  507. */
  508. noResolve: SyncHook<[ResolveRequest, Error]>;
  509. /**
  510. * resolve hook
  511. */
  512. resolve: AsyncSeriesBailHook<
  513. [ResolveRequest, ResolveContext],
  514. null | ResolveRequest
  515. >;
  516. /**
  517. * result hook
  518. */
  519. result: AsyncSeriesHook<[ResolveRequest, ResolveContext]>;
  520. }
  521. declare interface LStat {
  522. (
  523. path: PathLike,
  524. callback: (err: null | NodeJS.ErrnoException, result?: IStats) => void,
  525. ): void;
  526. (
  527. path: PathLike,
  528. options: undefined | (StatOptions & { bigint?: false }),
  529. callback: (err: null | NodeJS.ErrnoException, result?: IStats) => void,
  530. ): void;
  531. (
  532. path: PathLike,
  533. options: StatOptions & { bigint: true },
  534. callback: (
  535. err: null | NodeJS.ErrnoException,
  536. result?: IBigIntStats,
  537. ) => void,
  538. ): void;
  539. (
  540. path: PathLike,
  541. options: undefined | StatOptions,
  542. callback: (
  543. err: null | NodeJS.ErrnoException,
  544. result?: IStats | IBigIntStats,
  545. ) => void,
  546. ): void;
  547. }
  548. declare interface LStatSync {
  549. (path: PathLike, options?: undefined): IStats;
  550. (
  551. path: PathLike,
  552. options?: StatSyncOptions & { bigint?: false; throwIfNoEntry: false },
  553. ): undefined | IStats;
  554. (
  555. path: PathLike,
  556. options: StatSyncOptions & { bigint: true; throwIfNoEntry: false },
  557. ): undefined | IBigIntStats;
  558. (path: PathLike, options?: StatSyncOptions & { bigint?: false }): IStats;
  559. (path: PathLike, options: StatSyncOptions & { bigint: true }): IBigIntStats;
  560. (
  561. path: PathLike,
  562. options: StatSyncOptions & { bigint: boolean; throwIfNoEntry?: false },
  563. ): IStats | IBigIntStats;
  564. (
  565. path: PathLike,
  566. options?: StatSyncOptions,
  567. ): undefined | IStats | IBigIntStats;
  568. }
  569. declare class LogInfoPlugin {
  570. constructor(
  571. source:
  572. | string
  573. | AsyncSeriesBailHook<
  574. [ResolveRequest, ResolveContext],
  575. null | ResolveRequest
  576. >,
  577. );
  578. source:
  579. | string
  580. | AsyncSeriesBailHook<
  581. [ResolveRequest, ResolveContext],
  582. null | ResolveRequest
  583. >;
  584. apply(resolver: Resolver): void;
  585. }
  586. declare interface ObjectEncodingOptions {
  587. /**
  588. * encoding
  589. */
  590. encoding?:
  591. | null
  592. | "ascii"
  593. | "utf8"
  594. | "utf-8"
  595. | "utf16le"
  596. | "utf-16le"
  597. | "ucs2"
  598. | "ucs-2"
  599. | "base64"
  600. | "base64url"
  601. | "latin1"
  602. | "binary"
  603. | "hex";
  604. }
  605. declare interface ParsedIdentifier {
  606. /**
  607. * request
  608. */
  609. request: string;
  610. /**
  611. * query
  612. */
  613. query: string;
  614. /**
  615. * fragment
  616. */
  617. fragment: string;
  618. /**
  619. * is directory
  620. */
  621. directory: boolean;
  622. /**
  623. * is module
  624. */
  625. module: boolean;
  626. /**
  627. * is file
  628. */
  629. file: boolean;
  630. /**
  631. * is internal
  632. */
  633. internal: boolean;
  634. }
  635. type PathLike = string | Buffer | URL_url;
  636. type PathOrFileDescriptor = string | number | Buffer | URL_url;
  637. type Plugin =
  638. | undefined
  639. | null
  640. | false
  641. | ""
  642. | 0
  643. | { apply: (this: Resolver, resolver: Resolver) => void }
  644. | ((this: Resolver, resolver: Resolver) => void);
  645. declare interface PnpApi {
  646. /**
  647. * resolve to unqualified
  648. */
  649. resolveToUnqualified: (
  650. packageName: string,
  651. issuer: string,
  652. options: { considerBuiltins: boolean },
  653. ) => null | string;
  654. }
  655. declare interface ReadFile {
  656. (
  657. path: PathOrFileDescriptor,
  658. options:
  659. | undefined
  660. | null
  661. | ({ encoding?: null; flag?: string } & Abortable),
  662. callback: (err: null | NodeJS.ErrnoException, result?: Buffer) => void,
  663. ): void;
  664. (
  665. path: PathOrFileDescriptor,
  666. options:
  667. | ({ encoding: BufferEncoding; flag?: string } & Abortable)
  668. | "ascii"
  669. | "utf8"
  670. | "utf-8"
  671. | "utf16le"
  672. | "utf-16le"
  673. | "ucs2"
  674. | "ucs-2"
  675. | "base64"
  676. | "base64url"
  677. | "latin1"
  678. | "binary"
  679. | "hex",
  680. callback: (err: null | NodeJS.ErrnoException, result?: string) => void,
  681. ): void;
  682. (
  683. path: PathOrFileDescriptor,
  684. options:
  685. | undefined
  686. | null
  687. | "ascii"
  688. | "utf8"
  689. | "utf-8"
  690. | "utf16le"
  691. | "utf-16le"
  692. | "ucs2"
  693. | "ucs-2"
  694. | "base64"
  695. | "base64url"
  696. | "latin1"
  697. | "binary"
  698. | "hex"
  699. | (ObjectEncodingOptions & { flag?: string } & Abortable),
  700. callback: (
  701. err: null | NodeJS.ErrnoException,
  702. result?: string | Buffer,
  703. ) => void,
  704. ): void;
  705. (
  706. path: PathOrFileDescriptor,
  707. callback: (err: null | NodeJS.ErrnoException, result?: Buffer) => void,
  708. ): void;
  709. }
  710. declare interface ReadFileSync {
  711. (
  712. path: PathOrFileDescriptor,
  713. options?: null | { encoding?: null; flag?: string },
  714. ): Buffer;
  715. (
  716. path: PathOrFileDescriptor,
  717. options:
  718. | "ascii"
  719. | "utf8"
  720. | "utf-8"
  721. | "utf16le"
  722. | "utf-16le"
  723. | "ucs2"
  724. | "ucs-2"
  725. | "base64"
  726. | "base64url"
  727. | "latin1"
  728. | "binary"
  729. | "hex"
  730. | { encoding: BufferEncoding; flag?: string },
  731. ): string;
  732. (
  733. path: PathOrFileDescriptor,
  734. options?:
  735. | null
  736. | "ascii"
  737. | "utf8"
  738. | "utf-8"
  739. | "utf16le"
  740. | "utf-16le"
  741. | "ucs2"
  742. | "ucs-2"
  743. | "base64"
  744. | "base64url"
  745. | "latin1"
  746. | "binary"
  747. | "hex"
  748. | (ObjectEncodingOptions & { flag?: string }),
  749. ): string | Buffer;
  750. }
  751. declare interface Readdir {
  752. (
  753. path: PathLike,
  754. options:
  755. | undefined
  756. | null
  757. | "ascii"
  758. | "utf8"
  759. | "utf-8"
  760. | "utf16le"
  761. | "utf-16le"
  762. | "ucs2"
  763. | "ucs-2"
  764. | "base64"
  765. | "base64url"
  766. | "latin1"
  767. | "binary"
  768. | "hex"
  769. | {
  770. encoding:
  771. | null
  772. | "ascii"
  773. | "utf8"
  774. | "utf-8"
  775. | "utf16le"
  776. | "utf-16le"
  777. | "ucs2"
  778. | "ucs-2"
  779. | "base64"
  780. | "base64url"
  781. | "latin1"
  782. | "binary"
  783. | "hex";
  784. withFileTypes?: false;
  785. recursive?: boolean;
  786. },
  787. callback: (err: null | NodeJS.ErrnoException, files?: string[]) => void,
  788. ): void;
  789. (
  790. path: PathLike,
  791. options:
  792. | { encoding: "buffer"; withFileTypes?: false; recursive?: boolean }
  793. | "buffer",
  794. callback: (err: null | NodeJS.ErrnoException, files?: Buffer[]) => void,
  795. ): void;
  796. (
  797. path: PathLike,
  798. options:
  799. | undefined
  800. | null
  801. | "ascii"
  802. | "utf8"
  803. | "utf-8"
  804. | "utf16le"
  805. | "utf-16le"
  806. | "ucs2"
  807. | "ucs-2"
  808. | "base64"
  809. | "base64url"
  810. | "latin1"
  811. | "binary"
  812. | "hex"
  813. | (ObjectEncodingOptions & {
  814. withFileTypes?: false;
  815. recursive?: boolean;
  816. }),
  817. callback: (
  818. err: null | NodeJS.ErrnoException,
  819. files?: string[] | Buffer[],
  820. ) => void,
  821. ): void;
  822. (
  823. path: PathLike,
  824. callback: (err: null | NodeJS.ErrnoException, files?: string[]) => void,
  825. ): void;
  826. (
  827. path: PathLike,
  828. options: ObjectEncodingOptions & {
  829. withFileTypes: true;
  830. recursive?: boolean;
  831. },
  832. callback: (
  833. err: null | NodeJS.ErrnoException,
  834. files?: Dirent<string>[],
  835. ) => void,
  836. ): void;
  837. (
  838. path: PathLike,
  839. options: { encoding: "buffer"; withFileTypes: true; recursive?: boolean },
  840. callback: (
  841. err: null | NodeJS.ErrnoException,
  842. files: Dirent<Buffer>[],
  843. ) => void,
  844. ): void;
  845. }
  846. declare interface ReaddirSync {
  847. (
  848. path: PathLike,
  849. options?:
  850. | null
  851. | "ascii"
  852. | "utf8"
  853. | "utf-8"
  854. | "utf16le"
  855. | "utf-16le"
  856. | "ucs2"
  857. | "ucs-2"
  858. | "base64"
  859. | "base64url"
  860. | "latin1"
  861. | "binary"
  862. | "hex"
  863. | {
  864. encoding:
  865. | null
  866. | "ascii"
  867. | "utf8"
  868. | "utf-8"
  869. | "utf16le"
  870. | "utf-16le"
  871. | "ucs2"
  872. | "ucs-2"
  873. | "base64"
  874. | "base64url"
  875. | "latin1"
  876. | "binary"
  877. | "hex";
  878. withFileTypes?: false;
  879. recursive?: boolean;
  880. },
  881. ): string[];
  882. (
  883. path: PathLike,
  884. options:
  885. | "buffer"
  886. | { encoding: "buffer"; withFileTypes?: false; recursive?: boolean },
  887. ): Buffer[];
  888. (
  889. path: PathLike,
  890. options?:
  891. | null
  892. | "ascii"
  893. | "utf8"
  894. | "utf-8"
  895. | "utf16le"
  896. | "utf-16le"
  897. | "ucs2"
  898. | "ucs-2"
  899. | "base64"
  900. | "base64url"
  901. | "latin1"
  902. | "binary"
  903. | "hex"
  904. | (ObjectEncodingOptions & {
  905. withFileTypes?: false;
  906. recursive?: boolean;
  907. }),
  908. ): string[] | Buffer[];
  909. (
  910. path: PathLike,
  911. options: ObjectEncodingOptions & {
  912. withFileTypes: true;
  913. recursive?: boolean;
  914. },
  915. ): Dirent<string>[];
  916. (
  917. path: PathLike,
  918. options: { encoding: "buffer"; withFileTypes: true; recursive?: boolean },
  919. ): Dirent<Buffer>[];
  920. }
  921. declare interface Readlink {
  922. (
  923. path: PathLike,
  924. options: EncodingOption,
  925. callback: (err: null | NodeJS.ErrnoException, result?: string) => void,
  926. ): void;
  927. (
  928. path: PathLike,
  929. options: BufferEncodingOption,
  930. callback: (err: null | NodeJS.ErrnoException, result?: Buffer) => void,
  931. ): void;
  932. (
  933. path: PathLike,
  934. options: EncodingOption,
  935. callback: (
  936. err: null | NodeJS.ErrnoException,
  937. result?: string | Buffer,
  938. ) => void,
  939. ): void;
  940. (
  941. path: PathLike,
  942. callback: (err: null | NodeJS.ErrnoException, result?: string) => void,
  943. ): void;
  944. }
  945. declare interface ReadlinkSync {
  946. (path: PathLike, options?: EncodingOption): string;
  947. (path: PathLike, options: BufferEncodingOption): Buffer;
  948. (path: PathLike, options?: EncodingOption): string | Buffer;
  949. }
  950. declare interface RealPath {
  951. (
  952. path: PathLike,
  953. options: EncodingOption,
  954. callback: (err: null | NodeJS.ErrnoException, result?: string) => void,
  955. ): void;
  956. (
  957. path: PathLike,
  958. options: BufferEncodingOption,
  959. callback: (err: null | NodeJS.ErrnoException, result?: Buffer) => void,
  960. ): void;
  961. (
  962. path: PathLike,
  963. options: EncodingOption,
  964. callback: (
  965. err: null | NodeJS.ErrnoException,
  966. result?: string | Buffer,
  967. ) => void,
  968. ): void;
  969. (
  970. path: PathLike,
  971. callback: (err: null | NodeJS.ErrnoException, result?: string) => void,
  972. ): void;
  973. }
  974. declare interface RealPathSync {
  975. (path: PathLike, options?: EncodingOption): string;
  976. (path: PathLike, options: BufferEncodingOption): Buffer;
  977. (path: PathLike, options?: EncodingOption): string | Buffer;
  978. }
  979. declare interface ResolveContext {
  980. /**
  981. * directories that was found on file system
  982. */
  983. contextDependencies?: WriteOnlySet<string>;
  984. /**
  985. * files that was found on file system
  986. */
  987. fileDependencies?: WriteOnlySet<string>;
  988. /**
  989. * dependencies that was not found on file system
  990. */
  991. missingDependencies?: WriteOnlySet<string>;
  992. /**
  993. * set of hooks' calls. For instance, `resolve → parsedResolve → describedResolve`,
  994. */
  995. stack?: Set<string>;
  996. /**
  997. * log function
  998. */
  999. log?: (str: string) => void;
  1000. /**
  1001. * yield result, if provided plugins can return several results
  1002. */
  1003. yield?: (request: ResolveRequest) => void;
  1004. }
  1005. declare interface ResolveFunction {
  1006. (context: Context, path: string, request: string): string | false;
  1007. (path: string, request: string): string | false;
  1008. }
  1009. declare interface ResolveFunctionAsync {
  1010. (
  1011. context: Context,
  1012. path: string,
  1013. request: string,
  1014. resolveContext: ResolveContext,
  1015. callback: (
  1016. err: null | ErrorWithDetail,
  1017. res?: string | false,
  1018. req?: ResolveRequest,
  1019. ) => void,
  1020. ): void;
  1021. (
  1022. context: Context,
  1023. path: string,
  1024. request: string,
  1025. callback: (
  1026. err: null | ErrorWithDetail,
  1027. res?: string | false,
  1028. req?: ResolveRequest,
  1029. ) => void,
  1030. ): void;
  1031. (
  1032. path: string,
  1033. request: string,
  1034. resolveContext: ResolveContext,
  1035. callback: (
  1036. err: null | ErrorWithDetail,
  1037. res?: string | false,
  1038. req?: ResolveRequest,
  1039. ) => void,
  1040. ): void;
  1041. (
  1042. path: string,
  1043. request: string,
  1044. callback: (
  1045. err: null | ErrorWithDetail,
  1046. res?: string | false,
  1047. req?: ResolveRequest,
  1048. ) => void,
  1049. ): void;
  1050. }
  1051. type ResolveOptionsOptionalFS = Omit<
  1052. ResolveOptionsResolverFactoryObject_2,
  1053. "fileSystem"
  1054. > &
  1055. Partial<Pick<ResolveOptionsResolverFactoryObject_2, "fileSystem">>;
  1056. declare interface ResolveOptionsResolverFactoryObject_1 {
  1057. /**
  1058. * alias
  1059. */
  1060. alias: AliasOption[];
  1061. /**
  1062. * fallback
  1063. */
  1064. fallback: AliasOption[];
  1065. /**
  1066. * alias fields
  1067. */
  1068. aliasFields: Set<string | string[]>;
  1069. /**
  1070. * extension alias
  1071. */
  1072. extensionAlias: ExtensionAliasOption[];
  1073. /**
  1074. * cache predicate
  1075. */
  1076. cachePredicate: (predicate: ResolveRequest) => boolean;
  1077. /**
  1078. * cache with context
  1079. */
  1080. cacheWithContext: boolean;
  1081. /**
  1082. * A list of exports field condition names.
  1083. */
  1084. conditionNames: Set<string>;
  1085. /**
  1086. * description files
  1087. */
  1088. descriptionFiles: string[];
  1089. /**
  1090. * enforce extension
  1091. */
  1092. enforceExtension: boolean;
  1093. /**
  1094. * exports fields
  1095. */
  1096. exportsFields: Set<string | string[]>;
  1097. /**
  1098. * imports fields
  1099. */
  1100. importsFields: Set<string | string[]>;
  1101. /**
  1102. * extensions
  1103. */
  1104. extensions: Set<string>;
  1105. /**
  1106. * fileSystem
  1107. */
  1108. fileSystem: FileSystem;
  1109. /**
  1110. * unsafe cache
  1111. */
  1112. unsafeCache: false | Cache;
  1113. /**
  1114. * symlinks
  1115. */
  1116. symlinks: boolean;
  1117. /**
  1118. * resolver
  1119. */
  1120. resolver?: Resolver;
  1121. /**
  1122. * modules
  1123. */
  1124. modules: (string | string[])[];
  1125. /**
  1126. * main fields
  1127. */
  1128. mainFields: { name: string[]; forceRelative: boolean }[];
  1129. /**
  1130. * main files
  1131. */
  1132. mainFiles: Set<string>;
  1133. /**
  1134. * plugins
  1135. */
  1136. plugins: Plugin[];
  1137. /**
  1138. * pnp API
  1139. */
  1140. pnpApi: null | PnpApi;
  1141. /**
  1142. * roots
  1143. */
  1144. roots: Set<string>;
  1145. /**
  1146. * fully specified
  1147. */
  1148. fullySpecified: boolean;
  1149. /**
  1150. * resolve to context
  1151. */
  1152. resolveToContext: boolean;
  1153. /**
  1154. * restrictions
  1155. */
  1156. restrictions: Set<string | RegExp>;
  1157. /**
  1158. * prefer relative
  1159. */
  1160. preferRelative: boolean;
  1161. /**
  1162. * prefer absolute
  1163. */
  1164. preferAbsolute: boolean;
  1165. /**
  1166. * tsconfig file path or config object
  1167. */
  1168. tsconfig: string | boolean | TsconfigOptions;
  1169. }
  1170. declare interface ResolveOptionsResolverFactoryObject_2 {
  1171. /**
  1172. * A list of module alias configurations or an object which maps key to value
  1173. */
  1174. alias?: AliasOptions | AliasOption[];
  1175. /**
  1176. * A list of module alias configurations or an object which maps key to value, applied only after modules option
  1177. */
  1178. fallback?: AliasOptions | AliasOption[];
  1179. /**
  1180. * An object which maps extension to extension aliases
  1181. */
  1182. extensionAlias?: ExtensionAliasOptions;
  1183. /**
  1184. * A list of alias fields in description files
  1185. */
  1186. aliasFields?: (string | string[])[];
  1187. /**
  1188. * A function which decides whether a request should be cached or not. An object is passed with at least `path` and `request` properties.
  1189. */
  1190. cachePredicate?: (predicate: ResolveRequest) => boolean;
  1191. /**
  1192. * Whether or not the unsafeCache should include request context as part of the cache key.
  1193. */
  1194. cacheWithContext?: boolean;
  1195. /**
  1196. * A list of description files to read from
  1197. */
  1198. descriptionFiles?: string[];
  1199. /**
  1200. * A list of exports field condition names.
  1201. */
  1202. conditionNames?: string[];
  1203. /**
  1204. * Enforce that a extension from extensions must be used
  1205. */
  1206. enforceExtension?: boolean;
  1207. /**
  1208. * A list of exports fields in description files
  1209. */
  1210. exportsFields?: (string | string[])[];
  1211. /**
  1212. * A list of imports fields in description files
  1213. */
  1214. importsFields?: (string | string[])[];
  1215. /**
  1216. * A list of extensions which should be tried for files
  1217. */
  1218. extensions?: string[];
  1219. /**
  1220. * The file system which should be used
  1221. */
  1222. fileSystem: FileSystem;
  1223. /**
  1224. * Use this cache object to unsafely cache the successful requests
  1225. */
  1226. unsafeCache?: boolean | Cache;
  1227. /**
  1228. * Resolve symlinks to their symlinked location
  1229. */
  1230. symlinks?: boolean;
  1231. /**
  1232. * A prepared Resolver to which the plugins are attached
  1233. */
  1234. resolver?: Resolver;
  1235. /**
  1236. * A list of directories to resolve modules from, can be absolute path or folder name
  1237. */
  1238. modules?: string | string[];
  1239. /**
  1240. * A list of main fields in description files
  1241. */
  1242. mainFields?: (
  1243. | string
  1244. | string[]
  1245. | { name: string | string[]; forceRelative: boolean }
  1246. )[];
  1247. /**
  1248. * A list of main files in directories
  1249. */
  1250. mainFiles?: string[];
  1251. /**
  1252. * A list of additional resolve plugins which should be applied
  1253. */
  1254. plugins?: Plugin[];
  1255. /**
  1256. * A PnP API that should be used - null is "never", undefined is "auto"
  1257. */
  1258. pnpApi?: null | PnpApi;
  1259. /**
  1260. * A list of root paths
  1261. */
  1262. roots?: string[];
  1263. /**
  1264. * The request is already fully specified and no extensions or directories are resolved for it
  1265. */
  1266. fullySpecified?: boolean;
  1267. /**
  1268. * Resolve to a context instead of a file
  1269. */
  1270. resolveToContext?: boolean;
  1271. /**
  1272. * A list of resolve restrictions
  1273. */
  1274. restrictions?: (string | RegExp)[];
  1275. /**
  1276. * Use only the sync constraints of the file system calls
  1277. */
  1278. useSyncFileSystemCalls?: boolean;
  1279. /**
  1280. * Prefer to resolve module requests as relative requests before falling back to modules
  1281. */
  1282. preferRelative?: boolean;
  1283. /**
  1284. * Prefer to resolve server-relative urls as absolute paths before falling back to resolve in roots
  1285. */
  1286. preferAbsolute?: boolean;
  1287. /**
  1288. * TypeScript config file path or config object with configFile and references
  1289. */
  1290. tsconfig?: string | boolean | TsconfigOptions;
  1291. }
  1292. type ResolveRequest = BaseResolveRequest & Partial<ParsedIdentifier>;
  1293. declare abstract class Resolver {
  1294. fileSystem: FileSystem;
  1295. options: ResolveOptionsResolverFactoryObject_1;
  1296. hooks: KnownHooks;
  1297. ensureHook(
  1298. name:
  1299. | string
  1300. | AsyncSeriesBailHook<
  1301. [ResolveRequest, ResolveContext],
  1302. null | ResolveRequest
  1303. >,
  1304. ): AsyncSeriesBailHook<
  1305. [ResolveRequest, ResolveContext],
  1306. null | ResolveRequest
  1307. >;
  1308. getHook(
  1309. name:
  1310. | string
  1311. | AsyncSeriesBailHook<
  1312. [ResolveRequest, ResolveContext],
  1313. null | ResolveRequest
  1314. >,
  1315. ): AsyncSeriesBailHook<
  1316. [ResolveRequest, ResolveContext],
  1317. null | ResolveRequest
  1318. >;
  1319. resolveSync(context: Context, path: string, request: string): string | false;
  1320. resolve(
  1321. context: Context,
  1322. path: string,
  1323. request: string,
  1324. resolveContext: ResolveContext,
  1325. callback: (
  1326. err: null | ErrorWithDetail,
  1327. res?: string | false,
  1328. req?: ResolveRequest,
  1329. ) => void,
  1330. ): void;
  1331. doResolve(
  1332. hook: AsyncSeriesBailHook<
  1333. [ResolveRequest, ResolveContext],
  1334. null | ResolveRequest
  1335. >,
  1336. request: ResolveRequest,
  1337. message: null | string,
  1338. resolveContext: ResolveContext,
  1339. callback: (err?: null | Error, result?: ResolveRequest) => void,
  1340. ): void;
  1341. parse(identifier: string): ParsedIdentifier;
  1342. isModule(path: string): boolean;
  1343. isPrivate(path: string): boolean;
  1344. isDirectory(path: string): boolean;
  1345. join(path: string, request: string): string;
  1346. normalize(path: string): string;
  1347. }
  1348. declare interface Stat {
  1349. (
  1350. path: PathLike,
  1351. callback: (err: null | NodeJS.ErrnoException, result?: IStats) => void,
  1352. ): void;
  1353. (
  1354. path: PathLike,
  1355. options: undefined | (StatOptions & { bigint?: false }),
  1356. callback: (err: null | NodeJS.ErrnoException, result?: IStats) => void,
  1357. ): void;
  1358. (
  1359. path: PathLike,
  1360. options: StatOptions & { bigint: true },
  1361. callback: (
  1362. err: null | NodeJS.ErrnoException,
  1363. result?: IBigIntStats,
  1364. ) => void,
  1365. ): void;
  1366. (
  1367. path: PathLike,
  1368. options: undefined | StatOptions,
  1369. callback: (
  1370. err: null | NodeJS.ErrnoException,
  1371. result?: IStats | IBigIntStats,
  1372. ) => void,
  1373. ): void;
  1374. }
  1375. declare interface StatOptions {
  1376. /**
  1377. * need bigint values
  1378. */
  1379. bigint?: boolean;
  1380. }
  1381. declare interface StatSync {
  1382. (path: PathLike, options?: undefined): IStats;
  1383. (
  1384. path: PathLike,
  1385. options?: StatSyncOptions & { bigint?: false; throwIfNoEntry: false },
  1386. ): undefined | IStats;
  1387. (
  1388. path: PathLike,
  1389. options: StatSyncOptions & { bigint: true; throwIfNoEntry: false },
  1390. ): undefined | IBigIntStats;
  1391. (path: PathLike, options?: StatSyncOptions & { bigint?: false }): IStats;
  1392. (path: PathLike, options: StatSyncOptions & { bigint: true }): IBigIntStats;
  1393. (
  1394. path: PathLike,
  1395. options: StatSyncOptions & { bigint: boolean; throwIfNoEntry?: false },
  1396. ): IStats | IBigIntStats;
  1397. (
  1398. path: PathLike,
  1399. options?: StatSyncOptions,
  1400. ): undefined | IStats | IBigIntStats;
  1401. }
  1402. declare interface StatSyncOptions {
  1403. /**
  1404. * need bigint values
  1405. */
  1406. bigint?: boolean;
  1407. /**
  1408. * throw if no entry
  1409. */
  1410. throwIfNoEntry?: boolean;
  1411. }
  1412. declare interface SyncFileSystem {
  1413. /**
  1414. * read file sync method
  1415. */
  1416. readFileSync: ReadFileSync;
  1417. /**
  1418. * read dir sync method
  1419. */
  1420. readdirSync: ReaddirSync;
  1421. /**
  1422. * read json sync method
  1423. */
  1424. readJsonSync?: (pathOrFileDescription: PathOrFileDescriptor) => JsonObject;
  1425. /**
  1426. * read link sync method
  1427. */
  1428. readlinkSync: ReadlinkSync;
  1429. /**
  1430. * lstat sync method
  1431. */
  1432. lstatSync?: LStatSync;
  1433. /**
  1434. * stat sync method
  1435. */
  1436. statSync: StatSync;
  1437. /**
  1438. * real path sync method
  1439. */
  1440. realpathSync?: RealPathSync;
  1441. }
  1442. declare interface TsconfigOptions {
  1443. /**
  1444. * A relative path to the tsconfig file based on cwd, or an absolute path of tsconfig file
  1445. */
  1446. configFile?: string;
  1447. /**
  1448. * References to other tsconfig files. 'auto' inherits from TypeScript config, or an array of relative/absolute paths
  1449. */
  1450. references?: string[] | "auto";
  1451. /**
  1452. * Override baseUrl from tsconfig.json. If provided, this value will be used instead of the baseUrl in the tsconfig file
  1453. */
  1454. baseUrl?: string;
  1455. }
  1456. declare interface TsconfigPathsData {
  1457. /**
  1458. * tsconfig file data
  1459. */
  1460. alias: AliasOption[];
  1461. /**
  1462. * tsconfig file data
  1463. */
  1464. modules: string[];
  1465. }
  1466. declare interface TsconfigPathsMap {
  1467. /**
  1468. * main tsconfig paths data
  1469. */
  1470. main: TsconfigPathsData;
  1471. /**
  1472. * main tsconfig base URL (absolute path)
  1473. */
  1474. mainContext: string;
  1475. /**
  1476. * referenced tsconfig paths data mapped by baseUrl
  1477. */
  1478. refs: { [index: string]: TsconfigPathsData };
  1479. /**
  1480. * file dependencies
  1481. */
  1482. fileDependencies: Set<string>;
  1483. }
  1484. declare class TsconfigPathsPlugin {
  1485. constructor(configFileOrOptions: string | true | TsconfigOptions);
  1486. configFile: string;
  1487. references: "auto" | TsconfigReference[];
  1488. baseUrl?: string;
  1489. apply(resolver: Resolver): void;
  1490. }
  1491. declare interface TsconfigReference {
  1492. /**
  1493. * Path to the referenced project
  1494. */
  1495. path: string;
  1496. }
  1497. declare interface URL_url extends URL_Import {}
  1498. declare interface WriteOnlySet<T> {
  1499. add: (item: T) => void;
  1500. }
  1501. declare function exports(
  1502. context: Context,
  1503. path: string,
  1504. request: string,
  1505. resolveContext: ResolveContext,
  1506. callback: (
  1507. err: null | ErrorWithDetail,
  1508. res?: string | false,
  1509. req?: ResolveRequest,
  1510. ) => void,
  1511. ): void;
  1512. declare function exports(
  1513. context: Context,
  1514. path: string,
  1515. request: string,
  1516. callback: (
  1517. err: null | ErrorWithDetail,
  1518. res?: string | false,
  1519. req?: ResolveRequest,
  1520. ) => void,
  1521. ): void;
  1522. declare function exports(
  1523. path: string,
  1524. request: string,
  1525. resolveContext: ResolveContext,
  1526. callback: (
  1527. err: null | ErrorWithDetail,
  1528. res?: string | false,
  1529. req?: ResolveRequest,
  1530. ) => void,
  1531. ): void;
  1532. declare function exports(
  1533. path: string,
  1534. request: string,
  1535. callback: (
  1536. err: null | ErrorWithDetail,
  1537. res?: string | false,
  1538. req?: ResolveRequest,
  1539. ) => void,
  1540. ): void;
  1541. declare namespace exports {
  1542. export const sync: ResolveFunction;
  1543. export function create(
  1544. options: ResolveOptionsOptionalFS,
  1545. ): ResolveFunctionAsync;
  1546. export namespace create {
  1547. export const sync: (options: ResolveOptionsOptionalFS) => ResolveFunction;
  1548. }
  1549. export namespace ResolverFactory {
  1550. export let createResolver: (
  1551. options: ResolveOptionsResolverFactoryObject_2,
  1552. ) => Resolver;
  1553. }
  1554. export const forEachBail: <T, Z>(
  1555. array: T[],
  1556. iterator: Iterator<T, Z>,
  1557. callback: (err?: null | Error, result?: null | Z, i?: number) => void,
  1558. ) => void;
  1559. export type ResolveCallback = (
  1560. err: null | ErrorWithDetail,
  1561. res?: string | false,
  1562. req?: ResolveRequest,
  1563. ) => void;
  1564. export {
  1565. CachedInputFileSystem,
  1566. CloneBasenamePlugin,
  1567. LogInfoPlugin,
  1568. TsconfigPathsPlugin,
  1569. ResolveOptionsOptionalFS,
  1570. BaseFileSystem,
  1571. PnpApi,
  1572. Resolver,
  1573. Context,
  1574. FileSystem,
  1575. ResolveContext,
  1576. ResolveRequest,
  1577. SyncFileSystem,
  1578. Plugin,
  1579. ResolveOptionsResolverFactoryObject_2 as ResolveOptions,
  1580. ResolveFunctionAsync,
  1581. ResolveFunction,
  1582. };
  1583. }
  1584. export = exports;