ChainGraph API Documentation / @badaitech/chaingraph-types / PortArrayNested
Function: PortArrayNested()
PortArrayNested(
depth,itemConfig,config?):PropertyDecorator
Defined in: packages/chaingraph-types/src/decorator/array.decorator.ts:155
PortArrayNested decorator creates a nested array port.
This decorator wraps the base
Parameters
depth
number
The number of nested array levels (must be at least 1).
itemConfig
any
The configuration for the innermost port (non-array type) that populates the nested array.
config?
Omit<Omit<ArrayPortConfig<any>, "itemConfig"> & object, "type" | "itemConfig">
Optional additional configuration for the outer array port (excluding type and itemConfig).
Returns
PropertyDecorator
Port Array
decorator and recursively constructs a nested array configuration. The parameter depth defines how many levels of nested arrays should be created.
If depth is 1, the decorator is equivalent to
Port Array
with the supplied itemConfig. For greater depths, it wraps the itemConfig in successive array-port configurations.
Example usage: // Define a 2D array of numbers: @PortArrayNested(2, { type: 'number', defaultValue: 0 }, { defaultValue: [[0, 0]] }) public matrix!: number[][];
// Define a 3D array of strings: @PortArrayNested(3, { type: 'string', defaultValue: '' }) public nestedStrings!: string[][][];