import { Experimental_DecisionModelV4, Experimental_DecisionModelV4CallOptions, Experimental_DecisionModelV4Result, LanguageModelV4 } from "@ai-sdk/provider";
import { WORKFLOW_DESERIALIZE, WORKFLOW_SERIALIZE } from "@workflow/serde";
//#region src/decision-language-model.d.ts
/** Adapts structured language-model output to Choice, Score, and Boolean decisions. */
declare class DecisionLanguageModel implements Experimental_DecisionModelV4 {
  readonly specificationVersion = "v4";
  readonly supportedQuestionTypes: readonly ["choice", "score", "boolean"];
  readonly provider: string;
  private readonly model;
  constructor({ model, provider }: {
    model: LanguageModelV4;
    provider?: string;
  });
  get modelId(): string;
  static [WORKFLOW_SERIALIZE](model: DecisionLanguageModel): {
    model: LanguageModelV4;
    provider: string;
  };
  static [WORKFLOW_DESERIALIZE](options: {
    model: LanguageModelV4;
    provider: string;
  }): DecisionLanguageModel;
  /** @deprecated Use `doDecide` instead. */
  doEvaluate(options: Parameters<Experimental_DecisionModelV4['doDecide']>[0]): Promise<Experimental_DecisionModelV4Result>;
  doDecide({ state, questions, maxOutputTokens, reasoning, abortSignal, headers, providerOptions }: Experimental_DecisionModelV4CallOptions): Promise<Experimental_DecisionModelV4Result>;
}
//#endregion
//#region src/experimental-evaluation/index.d.ts
/** @deprecated Use `Experimental_DecisionLanguageModel` from `@ai-sdk/provider-utils/experimental-decision` instead. */
export declare const Experimental_EvaluationLanguageModel: typeof DecisionLanguageModel;
/** @deprecated Use `Experimental_DecisionLanguageModel` from `@ai-sdk/provider-utils/experimental-decision` instead. */
export type Experimental_EvaluationLanguageModel = DecisionLanguageModel;
//#endregion
//# sourceMappingURL=index.d.ts.map