1 | import { Syringe } from 'mana-syringe';
|
2 | import type { LayoutWorkTask } from './LayoutWorkTask';
|
3 | import type { LayoutTaskType } from './types';
|
4 | import type { ContextId } from './types';
|
5 | import type { FragmentResultFactory } from './FragmentResult';
|
6 | import type { LayoutChildrenFactory } from './LayoutChildren';
|
7 | import type { LayoutFragmentFactory } from './LayoutFragment';
|
8 | export declare const LayoutContextFactory: Syringe.DefinedToken;
|
9 | export interface LayoutContextFactory {
|
10 | (options: {
|
11 | mode: LayoutTaskType;
|
12 | }): LayoutContext;
|
13 | }
|
14 | export declare const LayoutContextOptions: Syringe.DefinedToken;
|
15 | export interface LayoutContextOptions {
|
16 | mode: LayoutTaskType;
|
17 | layoutChildrenFactory: LayoutChildrenFactory;
|
18 | fragmentResultFactory: FragmentResultFactory;
|
19 | layoutFragmentFactory: LayoutFragmentFactory;
|
20 | }
|
21 |
|
22 |
|
23 |
|
24 | export declare class LayoutContext {
|
25 | protected readonly options: LayoutContextOptions;
|
26 | contextId: ContextId;
|
27 | workQueue: LayoutWorkTask[];
|
28 | mode: LayoutTaskType;
|
29 | layoutChildrenFactory: LayoutChildrenFactory;
|
30 | fragmentResultFactory: FragmentResultFactory;
|
31 | layoutFragmentFactory: LayoutFragmentFactory;
|
32 | constructor(options: LayoutContextOptions);
|
33 | appendWorkTask(work: LayoutWorkTask): void;
|
34 | clearWorkQueue(): void;
|
35 | }
|