import { ExtractionTrigger, type ExtractionTriggerContext } from './types.js'; /** * Runs extraction after every agent invocation. * * The highest-fidelity option: nothing said in a turn is missed. Also the most expensive when an * {@link Extractor} is configured (a model call per turn) — for a server-side-extraction backend * with no extractor it is just a per-turn write. * * @example * ```typescript * extraction: { trigger: [new InvocationTrigger()] } * ``` */ export declare class InvocationTrigger extends ExtractionTrigger { readonly name = "invocation"; attach(context: ExtractionTriggerContext): void; } /** Options for {@link IntervalTrigger}. */ export interface IntervalTriggerOptions { /** Run extraction once every this many invocations. Must be a positive integer. */ turns: number; } /** * Runs extraction every N agent invocations. * * A controllable middle ground: extraction (and any model call it entails) happens on a cadence * rather than every turn, while the high-water mark guarantees the messages from the skipped turns * are still processed when the trigger does fire. * * @example * ```typescript * extraction: { trigger: [new IntervalTrigger({ turns: 5 })] } * ``` */ export declare class IntervalTrigger extends ExtractionTrigger { readonly name = "interval"; private readonly _turns; constructor(options: IntervalTriggerOptions); attach(context: ExtractionTriggerContext): void; } //# sourceMappingURL=triggers.d.ts.map