UNPKG

1.35 kBTypeScriptView Raw
1import { LoaderConfig } from './interfaces';
2import * as ts from 'typescript';
3export interface Request {
4 request?: Request;
5 relativePath: string;
6}
7export interface Callback {
8 (err?: Error, result?: any): void;
9 log?: any;
10 stack?: any;
11 missing?: any;
12}
13export declare type ResolverCallback = (request: Request, callback: Callback) => void;
14export interface ResolverPlugin {
15 apply(resolver: Resolver): void;
16}
17export interface Resolver {
18 apply(plugin: ResolverPlugin): void;
19 plugin(source: string, cb: ResolverCallback): any;
20 doResolve(target: string, req: Request, desc: string, Callback: any): any;
21 join(relativePath: string, innerRequest: Request): Request;
22}
23export interface Mapping {
24 onlyModule: boolean;
25 alias: string;
26 aliasPattern: RegExp;
27 target: string;
28}
29export interface PathPluginOptions {
30 context?: string;
31}
32export declare class PathPlugin implements ResolverPlugin {
33 source: string;
34 target: string;
35 ts: typeof ts;
36 configFilePath: string;
37 options: ts.CompilerOptions;
38 baseUrl: string;
39 mappings: Mapping[];
40 absoluteBaseUrl: string;
41 constructor(config?: LoaderConfig & ts.CompilerOptions & PathPluginOptions);
42 apply(resolver: Resolver): void;
43 createPlugin(resolver: Resolver, mapping: Mapping): (request: any, callback: any) => any;
44}