import { NodeDefinition, StatelessGraphNode, StatelessNodeDefinition, StatelessNodeType } from '../../types/graph'; /** * An instance of the [[isNil]] node. * See the [[isNil]] documentation to find out more. */ export interface IsNilNode extends StatelessGraphNode<'is-nil', IsNilNodeProperties> { } /** * A definition of the [[isNil]] node. * See the [[isNil]] documentation to find out more. */ export interface IsNilNodeDefinition extends StatelessNodeDefinition<'is-nil', IsNilNodeProperties> { } export interface IsNilNodeProperties { target: NodeDefinition; } /** * The implementation of the [[isNil]]. * See the [[isNil]] documentation to learn more. */ export declare const IsNilNodeType: StatelessNodeType<'is-nil', IsNilNodeProperties>; /** * Creates an instance of an [[isNil]] node, which is a node used when checking if a given target is [[nil]]. * * @example **Check if target node is nil** * ```js * import muster, { isNil, nil, ref, value } from '@dws/muster'; * * const app = muster({ * currentValue: value('some current value'), * previousValue: nil(), * }); * * await app.resolve(isNil(ref('currentValue'))); // === false * * await app.resolve(isNil(ref('previousValue'))); // === true * ``` * This example shows how to check if a given node is [[nil]](or resolves to a [[nil]]). */ export declare function isNil(target: NodeDefinition): IsNilNodeDefinition; export declare function isIsNilNodeDefinition(value: NodeDefinition): value is IsNilNodeDefinition;