import { NodeDefinition, NodeLike, StatelessGraphNode, StatelessNodeDefinition, StatelessNodeType } from '../../types/graph'; /** * An instance of the [[sqrt]] node. * See the [[sqrt]] documentation to find out more. */ export interface SqrtNode extends StatelessGraphNode<'sqrt', SqrtNodeProperties> { } /** * A definition of the [[sqrt]] node. * See the [[sqrt]] documentation to find out more. */ export interface SqrtNodeDefinition extends StatelessNodeDefinition<'sqrt', SqrtNodeProperties> { } export interface SqrtNodeProperties { operand: NodeDefinition; } /** * The implementation of the [[sqrt]] node. * See the [[sqrt]] documentation to learn more. */ export declare const SqrtNodeType: StatelessNodeType<'sqrt', SqrtNodeProperties>; /** * Creates a new instance of a [[sqrt]] node, which is a type of [[NodeDefinition]] used to compute * a square root of a given number for number-based [values](_nodes_graph_value_.html#value). * @returns {SqrtNodeDefinition} * * * @example **Square root of four** * ```js * import muster, { sqrt, ref } from '@dws/muster'; * * const app = muster({ * four: 4, * }); * * const result = await app.resolve(sqrt(ref('four'))); * // result === 2 * ``` * This example shows how to use [[sqrt]] node. */ export declare function sqrt(operand: NodeLike): SqrtNodeDefinition; export declare function isSqrtNodeDefinition(value: NodeDefinition): value is SqrtNodeDefinition;