import { type ValidatorFn } from '@angular/forms'; import { type DfDataModel, type DfId } from '../../ng-draw-flow.interfaces'; import { type DfSignalValidator } from '../graph-validation.interfaces'; export interface DfIsolatedNodesError { readonly hasIsolatedNodes: true; readonly isolatedNodes: readonly DfId[]; } /** Finds disconnected nodes without depending on an Angular form control. */ export declare function dfValidateIsolatedNodes(model: DfDataModel | null | undefined): DfIsolatedNodesError | null; /** * Validator that checks for *isolated* (disconnected) nodes — nodes that do **not** appear in any connection. * * ### Validation error shape * ```ts * { * hasIsolatedNodes: boolean; * isolatedNodes: DfId[] // array of nodeIds without connections * } * ``` * When there are **no** isolated nodes, it returns `null` so the control is valid. */ export declare function dfIsolatedNodesValidator(): ValidatorFn; /** Creates a validator accepted directly by Signal Forms `validate()`. */ export declare function dfIsolatedNodesSignalValidator(): DfSignalValidator;