import { IAutomatonTestLogicFn, InputFiniteAutomaton, TFiniteAutomatonType, TransformedFiniteAutomaton } from '../../types';
import * as FiniteAutomatonUtils from './utils';
export declare class FiniteAutomaton {
    #private;
    testLogic: IAutomatonTestLogicFn;
    automaton: TransformedFiniteAutomaton;
    constructor(testLogic: IAutomatonTestLogicFn, finiteAutomaton: InputFiniteAutomaton | TransformedFiniteAutomaton, automatonType: TFiniteAutomatonType, automatonId?: string);
    getAutomatonId(): string;
    generateGraphFromString(inputString: string): {
        automatonTestResult: boolean;
        finalNodes: import("../../types").GraphNode[];
        graph: import("../../types").GraphNode;
    };
    test(inputString: string): boolean;
}
export { FiniteAutomatonUtils };
