chore: generate
This commit is contained in:
@@ -31,19 +31,25 @@ export interface ExecuteResult<M extends Metadata = Metadata> {
|
||||
attachments?: Omit<MessageV2.FilePart, "id" | "sessionID" | "messageID">[]
|
||||
}
|
||||
|
||||
export interface Def<Parameters extends Schema.Decoder<unknown> = Schema.Decoder<unknown>, M extends Metadata = Metadata> {
|
||||
export interface Def<
|
||||
Parameters extends Schema.Decoder<unknown> = Schema.Decoder<unknown>,
|
||||
M extends Metadata = Metadata,
|
||||
> {
|
||||
id: string
|
||||
description: string
|
||||
parameters: Parameters
|
||||
execute(args: Schema.Schema.Type<Parameters>, ctx: Context): Effect.Effect<ExecuteResult<M>>
|
||||
formatValidationError?(error: unknown): string
|
||||
}
|
||||
export type DefWithoutID<Parameters extends Schema.Decoder<unknown> = Schema.Decoder<unknown>, M extends Metadata = Metadata> = Omit<
|
||||
Def<Parameters, M>,
|
||||
"id"
|
||||
>
|
||||
export type DefWithoutID<
|
||||
Parameters extends Schema.Decoder<unknown> = Schema.Decoder<unknown>,
|
||||
M extends Metadata = Metadata,
|
||||
> = Omit<Def<Parameters, M>, "id">
|
||||
|
||||
export interface Info<Parameters extends Schema.Decoder<unknown> = Schema.Decoder<unknown>, M extends Metadata = Metadata> {
|
||||
export interface Info<
|
||||
Parameters extends Schema.Decoder<unknown> = Schema.Decoder<unknown>,
|
||||
M extends Metadata = Metadata,
|
||||
> {
|
||||
id: string
|
||||
init: () => Effect.Effect<DefWithoutID<Parameters, M>>
|
||||
}
|
||||
@@ -121,7 +127,12 @@ function wrap<Parameters extends Schema.Decoder<unknown>, Result extends Metadat
|
||||
})
|
||||
}
|
||||
|
||||
export function define<Parameters extends Schema.Decoder<unknown>, Result extends Metadata, R, ID extends string = string>(
|
||||
export function define<
|
||||
Parameters extends Schema.Decoder<unknown>,
|
||||
Result extends Metadata,
|
||||
R,
|
||||
ID extends string = string,
|
||||
>(
|
||||
id: ID,
|
||||
init: Effect.Effect<Init<Parameters, Result>, never, R>,
|
||||
): Effect.Effect<Info<Parameters, Result>, never, R | Truncate.Service | Agent.Service> & { id: ID } {
|
||||
@@ -136,7 +147,9 @@ export function define<Parameters extends Schema.Decoder<unknown>, Result extend
|
||||
)
|
||||
}
|
||||
|
||||
export function init<P extends Schema.Decoder<unknown>, M extends Metadata>(info: Info<P, M>): Effect.Effect<Def<P, M>> {
|
||||
export function init<P extends Schema.Decoder<unknown>, M extends Metadata>(
|
||||
info: Info<P, M>,
|
||||
): Effect.Effect<Def<P, M>> {
|
||||
return Effect.gen(function* () {
|
||||
const init = yield* info.init()
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user