greybel-languageserver-core
Version:
Core functionality of language server for GreyScript
20 lines (19 loc) • 727 B
TypeScript
import { ASTBase } from 'miniscript-core';
export type ScraperMap = Record<string, (item: any, level: number) => void>;
export interface ScraperState {
exit: boolean;
skip: boolean;
}
export type ScraperCallback = (item: any, level: number) => Partial<ScraperState> | null;
export declare class ScraperWalker {
map: ScraperMap;
callback: ScraperCallback;
state: ScraperState;
constructor(callback: ScraperCallback, customMap?: ScraperMap);
visit(o: ASTBase, level?: number): void;
}
type ScraperValidateEx = (item: any, level: number) => (Partial<ScraperState> & {
valid?: boolean;
}) | void;
export declare function findEx(validate: ScraperValidateEx, rootItem: ASTBase): ASTBase[];
export {};