Skip to content

dag-node / Exports / AbstractNodeDefinition

Class: AbstractNodeDefinition<TSchema>

Base class for all DAG node definitions. Handles config schema parsing via zod and delegates lifecycle methods to typed *WithConfig overrides.

Subclasses must implement configSchemaDefinition, metadata fields, and at minimum executeWithConfig. Optional lifecycle hooks: initializeWithConfig, estimateCostWithConfig, validateInputWithConfig, validateOutputWithConfig, disposeWithConfig.

See

  • IDagNodeDefinition - interface this class implements
  • NodeIoAccessor - helper for typed input/output access in execute methods

Type parameters

NameType
TSchemaextends z.ZodTypeAny

Implements

  • IDagNodeDefinition

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new AbstractNodeDefinition<TSchema>(): AbstractNodeDefinition<TSchema>

Type parameters

NameType
TSchemaextends ZodTypeAny

Returns

AbstractNodeDefinition<TSchema>

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:54

Properties

nodeType

Readonly Abstract nodeType: string

Implementation of

IDagNodeDefinition.nodeType

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:45


displayName

Readonly Abstract displayName: string

Implementation of

IDagNodeDefinition.displayName

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:46


category

Readonly Abstract category: string

Implementation of

IDagNodeDefinition.category

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:47


inputs

Readonly Abstract inputs: IPortDefinition[]

Implementation of

IDagNodeDefinition.inputs

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:48


outputs

Readonly Abstract outputs: IPortDefinition[]

Implementation of

IDagNodeDefinition.outputs

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:49


configSchemaDefinition

Readonly Abstract configSchemaDefinition: TSchema

Implementation of

IDagNodeDefinition.configSchemaDefinition

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:50


taskHandler

Readonly taskHandler: INodeTaskHandler

Implementation of

IDagNodeDefinition.taskHandler

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:52

Methods

estimateCostWithConfig

estimateCostWithConfig(input, context, config): Promise<TResult<ICostEstimate, IDagError>>

Parameters

NameType
inputTPortPayload
contextINodeExecutionContext
configoutput<TSchema>

Returns

Promise<TResult<ICostEstimate, IDagError>>

Defined in

packages/dag-node/src/lifecycle/abstract-node-definition.ts:136

Released under the MIT License.