import { GetValueT, SetValueT } from "./nodeTypes"; import { Continuation, Environment, EnvironmentBase, PartialErrorContinuation } from "./types"; declare type EnvironmentLike = EnvironmentBase | Environment | any; export declare function isEnvironment(env: EnvironmentLike): env is Environment; export declare function toEnvironment(environment?: EnvironmentLike): Environment; export declare function createEnvironment(environmentLike: EnvironmentLike, prev?: EnvironmentLike): { prev: any; internal?: boolean | undefined; values: { [key: string]: any; }; }; export declare function getEnvironmentBy(env: Environment, condition: (env: Environment) => boolean): Environment | null; export declare function getEnvironmentForValue(env: Environment, name: string): Environment | null; export declare const getSuperEnv: (name: string, closestEnv: Environment) => Environment | null; export declare function SetValue({ name, value, isDeclaration }: Omit, "type">, c: Continuation, cerr: PartialErrorContinuation, env: Environment): void; export declare function GetValue({ name }: Omit, c: Continuation, cerr: PartialErrorContinuation, env: Environment): void; export declare const createInternalEnv: (values: object, prev?: Environment | undefined) => { readonly internal: true; readonly prev: any; readonly values: { [key: string]: any; }; }; export {};