opencode / packages /plugin /src /v2 /effect /registration.ts
SaylorTwift's picture
SaylorTwift HF Staff
Add files using upload-large-folder tool
0dbc9de verified
Raw
History Blame Contribute Delete
379 Bytes
import type { Effect, Scope } from "effect"
export interface Registration {
readonly dispose: Effect.Effect<void>
}
export interface Reload {
readonly reload: () => Effect.Effect<void>
}
export type Hooks<Spec> = {
readonly [Name in keyof Spec]: (
callback: (input: Spec[Name]) => Effect.Effect<void> | void,
) => Effect.Effect<Registration, never, Scope.Scope>
}