import * as IR from "../../ir"; import { CrochetModule, CrochetRelation, Environment, ProceduralRelation, RelationTag, State, Tree as RelationTree, TreeType } from "../intrinsics"; import { Namespace } from "../namespaces"; import { XorShift } from "../../utils/xorshift"; import { CrochetValue } from "../../crochet"; export declare function define_concrete(module: CrochetModule, meta: number, name: string, documentation: string, type: TreeType, tree: RelationTree): void; export declare function make_functional_layer(module: CrochetModule, funs: Map): Namespace>; export declare function lookup(module: CrochetModule, relations: Namespace, name: string): CrochetRelation; export declare function search(state: State, module: CrochetModule, env: Environment, relation: CrochetRelation, patterns0: IR.Pattern[]): Environment[]; export declare function sample(state: State, module: CrochetModule, random: XorShift, size: number, env: Environment, relation: CrochetRelation, patterns0: IR.Pattern[]): Environment[]; export declare function assert_tag(tag: T, relation: CrochetRelation): asserts relation is CrochetRelation; export declare function insert(relation: CrochetRelation, values: CrochetValue[]): void; export declare function remove(relation: CrochetRelation, values: CrochetValue[]): void;