import type { BindingContext, GlobalSelector, PerTabBindingContext, PerTabSelector } from "../state/selectors/contract.ts"; import type { QuestionnaireState } from "../state/state.ts"; import type { StatefulView } from "./stateful-view.ts"; import type { TabComponents } from "./tab-components.ts"; export interface ComponentBinding
{ readonly component: StatefulView
; readonly select: GlobalSelector
; } export interface PerTabBinding
{ readonly resolve: (tab: TabComponents) => StatefulView
| undefined; readonly select: PerTabSelector
;
readonly predicate?: PerTabSelector (spec: ComponentBinding ): BoundGlobalBinding;
export declare function perTabBinding (spec: PerTabBinding ): BoundPerTabBinding;
//# sourceMappingURL=component-binding.d.ts.map