import { WorkflowState, IntentResult } from "./types";
export declare class DummyIntentMap {
	query(prompt: string): Promise<IntentResult>;
}
export declare class WorkflowOperator {
	name: string;
	operation: (state: WorkflowState) => Promise<WorkflowState>;
	constructor(name: string, operation: (state: WorkflowState) => Promise<WorkflowState>);
	execute(state: WorkflowState): Promise<WorkflowState>;
}
export declare class ManifoldRegion {
	name: string;
	operators: WorkflowOperator[];
	adjacentRegions: Set<ManifoldRegion>;
	constructor(name: string, operators?: WorkflowOperator[]);
	addOperator(operator: WorkflowOperator): void;
	connectTo(region: ManifoldRegion): void;
	getValidOperators(_state: WorkflowState): Promise<WorkflowOperator[]>;
}
export declare class NestedManifoldRegion extends ManifoldRegion {
	nestedManifold: WorkflowFunctionManifold;
	constructor(name: string, nestedManifold: WorkflowFunctionManifold);
	getValidOperators(state: WorkflowState): Promise<WorkflowOperator[]>;
	navigate(prompt: string): Promise<boolean>;
	executeWorkflow(prompt: string): Promise<boolean>;
}
export declare class WorkflowFunctionManifold {
	intentMap: DummyIntentMap;
	regions: Map<string, ManifoldRegion>;
	currentRegion: ManifoldRegion | null;
	state: WorkflowState;
	parentManifold?: WorkflowFunctionManifold;
	constructor(intentMap: DummyIntentMap);
	addRegion(region: ManifoldRegion): void;
	navigate(prompt: string): Promise<boolean>;
	executeWorkflow(prompt: string): Promise<boolean>;
}
