UNPKG

2.16 kBTypeScriptView Raw
1/**
2 * Copyright 2020 The AMP HTML Authors. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS-IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16import { TransformInterface, PluginOptions } from './types';
17import { PluginContext, InputOptions, OutputOptions, SourceDescription } from 'rollup';
18import { Mangle } from './transformers/mangle';
19import { Ebbinghaus } from './transformers/ebbinghaus';
20import MagicString from 'magic-string';
21declare class Transform implements TransformInterface {
22 protected context: PluginContext;
23 protected pluginOptions: PluginOptions;
24 protected mangler: Mangle;
25 protected memory: Ebbinghaus;
26 protected inputOptions: InputOptions;
27 protected outputOptions: OutputOptions;
28 name: string;
29 constructor(context: PluginContext, pluginOptions: PluginOptions, mangler: Mangle, memory: Ebbinghaus, inputOptions: InputOptions, outputOptions: OutputOptions);
30}
31export declare class SourceTransform extends Transform {
32 name: string;
33 transform(id: string, source: MagicString): Promise<MagicString>;
34}
35export declare class ChunkTransform extends Transform {
36 name: string;
37 extern(options: OutputOptions): string | null;
38 pre(fileName: string, source: MagicString): Promise<MagicString>;
39 post(fileName: string, source: MagicString): Promise<MagicString>;
40}
41export declare function chunkLifecycle(fileName: string, printableName: string, method: 'pre' | 'post', code: string, transforms: Array<ChunkTransform>): Promise<SourceDescription>;
42export declare function sourceLifecycle(id: string, printableName: string, code: string, transforms: Array<SourceTransform>): Promise<SourceDescription>;
43export {};