Documentation / @agentick/core / pipe
Function: pipe()
Call Signature
pipe<
T1>(p1):Procedure<T1>
Defined in: kernel/src/procedure.ts:1669
Pipe multiple procedures together, passing the output of each to the next.
Type Parameters
T1
T1 extends (...args) => any
Parameters
p1
Procedure<T1>
Returns
Procedure<T1>
Example
const parse = createProcedure(async (json: string) => JSON.parse(json));
const validate = createProcedure(async (data: unknown) => schema.parse(data));
const transform = createProcedure(async (valid: Valid) => transform(valid));
// Create a pipeline that parses, validates, then transforms
const pipeline = pipe(parse, validate, transform);
const result = await pipeline('{"name": "test"}');Call Signature
pipe<
T1,T2>(p1,p2):Procedure<(...args) =>Promise<ExtractReturn<T2>>>
Defined in: kernel/src/procedure.ts:1670
Pipe multiple procedures together, passing the output of each to the next.
Type Parameters
T1
T1 extends (...args) => any
T2
T2 extends (arg) => any
Parameters
p1
Procedure<T1>
p2
Procedure<T2>
Returns
Procedure<(...args) => Promise<ExtractReturn<T2>>>
Example
const parse = createProcedure(async (json: string) => JSON.parse(json));
const validate = createProcedure(async (data: unknown) => schema.parse(data));
const transform = createProcedure(async (valid: Valid) => transform(valid));
// Create a pipeline that parses, validates, then transforms
const pipeline = pipe(parse, validate, transform);
const result = await pipeline('{"name": "test"}');Call Signature
pipe<
T1,T2,T3>(p1,p2,p3):Procedure<(...args) =>Promise<ExtractReturn<T3>>>
Defined in: kernel/src/procedure.ts:1677
Pipe multiple procedures together, passing the output of each to the next.
Type Parameters
T1
T1 extends (...args) => any
T2
T2 extends (arg) => any
T3
T3 extends (arg) => any
Parameters
p1
Procedure<T1>
p2
Procedure<T2>
p3
Procedure<T3>
Returns
Procedure<(...args) => Promise<ExtractReturn<T3>>>
Example
const parse = createProcedure(async (json: string) => JSON.parse(json));
const validate = createProcedure(async (data: unknown) => schema.parse(data));
const transform = createProcedure(async (valid: Valid) => transform(valid));
// Create a pipeline that parses, validates, then transforms
const pipeline = pipe(parse, validate, transform);
const result = await pipeline('{"name": "test"}');Call Signature
pipe<
T1,T2,T3,T4>(p1,p2,p3,p4):Procedure<(...args) =>Promise<ExtractReturn<T4>>>
Defined in: kernel/src/procedure.ts:1686
Pipe multiple procedures together, passing the output of each to the next.
Type Parameters
T1
T1 extends (...args) => any
T2
T2 extends (arg) => any
T3
T3 extends (arg) => any
T4
T4 extends (arg) => any
Parameters
p1
Procedure<T1>
p2
Procedure<T2>
p3
Procedure<T3>
p4
Procedure<T4>
Returns
Procedure<(...args) => Promise<ExtractReturn<T4>>>
Example
const parse = createProcedure(async (json: string) => JSON.parse(json));
const validate = createProcedure(async (data: unknown) => schema.parse(data));
const transform = createProcedure(async (valid: Valid) => transform(valid));
// Create a pipeline that parses, validates, then transforms
const pipeline = pipe(parse, validate, transform);
const result = await pipeline('{"name": "test"}');Call Signature
pipe<
T1,T2,T3,T4,T5>(p1,p2,p3,p4,p5):Procedure<(...args) =>Promise<ExtractReturn<T5>>>
Defined in: kernel/src/procedure.ts:1697
Pipe multiple procedures together, passing the output of each to the next.
Type Parameters
T1
T1 extends (...args) => any
T2
T2 extends (arg) => any
T3
T3 extends (arg) => any
T4
T4 extends (arg) => any
T5
T5 extends (arg) => any
Parameters
p1
Procedure<T1>
p2
Procedure<T2>
p3
Procedure<T3>
p4
Procedure<T4>
p5
Procedure<T5>
Returns
Procedure<(...args) => Promise<ExtractReturn<T5>>>
Example
const parse = createProcedure(async (json: string) => JSON.parse(json));
const validate = createProcedure(async (data: unknown) => schema.parse(data));
const transform = createProcedure(async (valid: Valid) => transform(valid));
// Create a pipeline that parses, validates, then transforms
const pipeline = pipe(parse, validate, transform);
const result = await pipeline('{"name": "test"}');