import { FlatDastRootWithErrors } from './CoreWorker';
declare module "./CoreWorker" {
    interface ElementData {
        props?: Record<string, any>;
    }
}
export type ComponentInstruction = {
    actions: Record<string, {
        actionName: string;
        componentIdx: number;
    }>;
    componentIdx: number;
    componentType: string;
    effectiveIdx: number;
    id: string;
    rendererType: string;
};
export type UpdateInstruction = {
    instructionType: "updateRendererState";
    rendererStatesToUpdate: RendererStateToUpdate[];
};
export type RendererStateToUpdate = {
    componentIdx: number;
    childrenInstructions?: (ComponentInstruction | string)[];
    stateValues: Record<string, any>;
};
/**
 * Transform the initial output from the JS core, i.e., `documentToRender` and `updateInstructions`
 * into the `FlatDastRoot` structure produced by the rust core and expected by `doenetml-prototype`.
 */
export declare function flatDastFromJS(documentToRender: ComponentInstruction, updateInstructions: UpdateInstruction[]): FlatDastRootWithErrors;
//# sourceMappingURL=flatDastFromJS.d.ts.map