mirror of
https://github.com/idanoo/GoScrobble.git
synced 2024-11-25 09:55:15 +00:00
40 lines
1.3 KiB
TypeScript
40 lines
1.3 KiB
TypeScript
import { Node } from 'estree-walker';
|
|
|
|
export interface AttachedScope {
|
|
parent?: AttachedScope;
|
|
isBlockScope: boolean;
|
|
declarations: { [key: string]: boolean };
|
|
addDeclaration(node: Node, isBlockDeclaration: boolean, isVar: boolean): void;
|
|
contains(name: string): boolean;
|
|
}
|
|
|
|
export interface DataToEsmOptions {
|
|
compact?: boolean;
|
|
indent?: string;
|
|
namedExports?: boolean;
|
|
objectShorthand?: boolean;
|
|
preferConst?: boolean;
|
|
}
|
|
|
|
export type AddExtension = (filename: string, ext?: string) => string;
|
|
export const addExtension: AddExtension;
|
|
|
|
export type AttachScopes = (ast: Node, propertyName?: string) => AttachedScope;
|
|
export const attachScopes: AttachScopes;
|
|
|
|
export type CreateFilter = (
|
|
include?: Array<string | RegExp> | string | RegExp | null,
|
|
exclude?: Array<string | RegExp> | string | RegExp | null,
|
|
options?: { resolve?: string | false | null }
|
|
) => (id: string | any) => boolean;
|
|
export const createFilter: CreateFilter;
|
|
|
|
export type MakeLegalIdentifier = (str: string) => string;
|
|
export const makeLegalIdentifier: MakeLegalIdentifier;
|
|
|
|
export type DataToEsm = (data: any, options?: DataToEsmOptions) => string;
|
|
export const dataToEsm: DataToEsm;
|
|
|
|
export type ExtractAssignedNames = (param: Node) => Array<string>;
|
|
export const extractAssignedNames: ExtractAssignedNames;
|