@solvprotocol/upgrade-safe-transpiler
Version:
Solidity preprocessor used to generate OpenZeppelin Contracts Upgrade Safe.
45 lines • 1.59 kB
TypeScript
/// <reference types="node" />
import { SourceUnit } from 'solidity-ast';
import { Node } from 'solidity-ast/node';
import { SolcInput, SolcOutput } from './solc/input-output';
import { SrcDecoder } from './solc/src-decoder';
import { LayoutGetter } from './solc/layout-getter';
import { Transformation, WithSrc } from './transformations/type';
import { ASTResolver } from './ast-resolver';
declare type Transformer = (sourceUnit: SourceUnit, tools: TransformerTools) => Generator<Transformation>;
interface ReadOriginal {
(node: Node, type?: 'string'): string;
(node: Node, type: 'buffer'): Buffer;
}
export interface TransformerTools {
originalSource: string;
originalSourceBuf: Buffer;
readOriginal: ReadOriginal;
resolver: ASTResolver;
getData: (node: Node) => Partial<TransformData>;
getLayout: LayoutGetter;
}
export interface TransformData {
}
interface TransformOptions {
exclude?: (source: string) => boolean;
}
export declare class Transform {
private state;
private data;
readonly decodeSrc: SrcDecoder;
readonly getLayout: LayoutGetter;
readonly resolver: ASTResolver;
constructor(input: SolcInput, output: SolcOutput, options?: TransformOptions);
apply(transform: Transformer): void;
getData(node: Node): Partial<TransformData>;
readOriginal(node: WithSrc, type?: 'string'): string;
readOriginal(node: WithSrc, type: 'buffer'): Buffer;
read(node: WithSrc): string;
results(): {
[file in string]: string;
};
asts(): SourceUnit[];
}
export {};
//# sourceMappingURL=transform.d.ts.map