import { type IBehavior } from '../../stream-extended/index.js'; import type { I$Slottable, IComponentBehavior, IOutputTethers } from '../types.js'; export interface IPort { readonly __portA?: A; readonly __portB?: B; } export declare function port(): IPort; export type IPortBehaviors

= { [K in keyof P]: P[K] extends IPort ? IBehavior : never; }; type IComponentResult = [I$Slottable, IComponentBehavior] | [I$Slottable]; type IComponentFn = (createCallback: (...args: IBehavior[]) => IComponentResult) => (iTether: IOutputTethers) => I$Slottable; type IPortsComponentFn =

>, T>(ports: P, createCallback: (behaviors: IPortBehaviors

) => IComponentResult) => (iTether: IOutputTethers) => I$Slottable; type IComponent = IComponentFn & { ports: IPortsComponentFn; }; export declare const component: IComponent; export {};