import { Activation, CrochetActivation, CrochetCommand, CrochetCommandBranch, CrochetType, CrochetTypeConstraint, CrochetValue, Universe } from "../intrinsics"; export declare function add_branch(command: CrochetCommand, branch: CrochetCommandBranch): void; export declare function select_branch(command: CrochetCommand, values: CrochetValue[]): CrochetCommandBranch; export declare function prepare_activation(parent_activation: Activation, branch: CrochetCommandBranch, values: CrochetValue[]): CrochetActivation; export declare function assert_no_ambiguity(branches: CrochetCommandBranch[], types: CrochetTypeConstraint[]): void; export declare function select_exact(branches: CrochetCommandBranch[], types: CrochetTypeConstraint[]): Generator; export declare function compare_branches(b1: CrochetCommandBranch, b2: CrochetCommandBranch): number; export declare function branch_accepts(branch: CrochetCommandBranch, types: CrochetType[]): boolean; export declare function get_or_make_command(universe: Universe, name: string, arity: number): CrochetCommand; export declare function get_command(universe: Universe, name: string): CrochetCommand;