import type { Message } from '@bufbuild/protobuf'; import type { Secret, SecretRequest, SecretRequestJson } from '../generated/sdk/v1alpha/sdk_pb'; import { type Runtime } from './runtime'; import type { Trigger } from './utils/triggers/trigger-interface'; import type { CreSerializable } from './utils'; export type HandlerFn = (runtime: Runtime, triggerOutput: TTriggerOutput) => Promise> | CreSerializable; export interface HandlerEntry, TTriggerOutput, TResult> { trigger: Trigger; fn: HandlerFn; } export type Workflow = ReadonlyArray>; export declare const handler: , TTriggerOutput, TConfig, TResult>(trigger: Trigger, fn: HandlerFn) => HandlerEntry; export type SecretsProvider = { getSecret(request: SecretRequest | SecretRequestJson): { result: () => Secret; }; };