import { Syringe } from 'mana-syringe'; import { LayoutObject } from './LayoutObject'; import { LayoutContext } from './LayoutContext'; import type { LayoutFragment } from './LayoutFragment'; export declare const FragmentResultFactory: Syringe.DefinedToken; export interface FragmentResultFactory { (options: FragmentResultOptions): FragmentResult; } /** * The web developer defined layout method can return either a FragmentResultOptions or a FragmentResult. */ export declare const FragmentResultOptions: Syringe.DefinedToken; export interface FragmentResultOptions { inlineSize: number; blockSize: number; autoBlockSize: number; childFragments: LayoutFragment[]; data: T; } export declare const ContextNode: Syringe.DefinedToken; export declare class FragmentResult { protected readonly _layoutContext: LayoutContext; protected readonly _node: LayoutObject; protected readonly options: FragmentResultOptions; private layoutContext; readonly inlineSize: number; readonly blockSize: number; private node; childFragments: LayoutFragment[]; data: T; constructor(_layoutContext: LayoutContext, _node: LayoutObject, options: FragmentResultOptions); }