import { NodeDefinition, OperationProperties, Params, StatelessGraphNode, StatelessNodeType } from '../../types/graph'; /** * An instance of the [[createBehavior]] node. * See the [[createBehavior]] documentation to find out more. */ export interface CreateBehaviorNode extends StatelessGraphNode<'createBehavior', CreateBehaviorNodeProperties> { } /** * A definition of the [[createBehavior]] node. * See the [[createBehavior]] documentation to find out more. */ export interface CreateBehaviorNodeDefinition extends NodeDefinition<'createBehavior', CreateBehaviorNodeProperties> { } export declare type OperationFactory = (params: Params, operationProperties: OperationProperties) => NodeDefinition; export interface CreateBehaviorNodeProperties { operations: { [name: string]: OperationFactory; }; } /** * Implementation of the [[createBehavior]]. * See the [[createBehavior]] documentation for more information. */ export declare const CreateBehaviorNodeType: StatelessNodeType<'createBehavior', CreateBehaviorNodeProperties>; export declare function createBehavior(operations: { [name: string]: OperationFactory; }): CreateBehaviorNodeDefinition; export declare function isCreateBehaviorNodeDefinition(value: NodeDefinition): value is CreateBehaviorNodeDefinition;