Skip to content
Effect 4.0 is here. One ecosystem. Zero dependencies.

OpenRouterSchema unstable

Schemas for OpenRouter's alpha Decisions API.

7 exports Added in v4.0.0 Source

Schemas

Answer unstable

Added in v4.0.0 Source

A provider answer with optional probabilities and confidence.

Signature

declare const Answer: Union<readonly [Struct<{
readonly choice: String;
readonly confidence: optional<Finite>;
readonly probabilities: optional<$Record<String, Finite>>;
readonly type: Literal<"choice">;
}>, Struct<{
readonly confidence: optional<Finite>;
readonly legend: optional<$Record<String, String>>;
readonly probabilities: optional<$Record<String, Finite>>;
readonly score: Finite;
readonly type: Literal<"score">;
}>, Struct<{
readonly noul: Finite;
readonly type: Literal<"noul">;
}>]>

ChoiceQuestion unstable

Added in v4.0.0 Source

A choice question with descriptions keyed by choice label.

Signature

declare const ChoiceQuestion: Struct<{
readonly criteria: $Record<String, String>;
readonly instructions: String;
readonly type: Literal<"choice">;
}>

DecisionsQuestion unstable

Added in v4.0.0 Source

A choice, ordered score, or probability question.

Signature

declare const DecisionsQuestion: Union<readonly [Struct<{
readonly criteria: $Record<String, String>;
readonly instructions: String;
readonly type: Literal<"choice">;
}>, Struct<{
readonly criteria: $Array<String>;
readonly instructions: String;
readonly type: Literal<"score">;
}>, Struct<{
readonly criteria: optional<Struct<{
readonly false: String;
readonly true: String;
}>>;
readonly instructions: String;
readonly type: Literal<"noul">;
}>]>

DecisionsRequest unstable

Added in v4.0.0 Source

Request body for the alpha Decisions endpoint.

Signature

declare const DecisionsRequest: Struct<{
readonly model: String;
readonly provider: optional<Union<readonly [Struct<{
readonly allow_fallbacks: optionalKey<Union<readonly [Boolean, Null]>>;
readonly data_collection: optionalKey<Union<readonly [Literal<...>, Literal<...>, Null]>>;
readonly enforce_distillable_text: optionalKey<Union<readonly [Boolean, Null]>>;
readonly ignore: optionalKey<Union<readonly [$Array<...>, Null]>>;
readonly max_price: optionalKey<Struct<{
readonly audio: optionalKey<...>;
readonly completion: optionalKey<...>;
readonly image: optionalKey<...>;
readonly prompt: optionalKey<...>;
readonly request: optionalKey<...>;
}>>;
readonly only: optionalKey<Union<readonly [$Array<...>, Null]>>;
readonly order: optionalKey<Union<readonly [$Array<...>, Null]>>;
readonly preferred_max_latency: optionalKey<Union<readonly [Number, Struct<...>, Null]>>;
readonly preferred_min_throughput: optionalKey<Union<readonly [Number, Struct<...>, Null]>>;
readonly quantizations: optionalKey<Union<readonly [$Array<...>, Null]>>;
readonly require_parameters: optionalKey<Union<readonly [Boolean, Null]>>;
readonly sort: optionalKey<Union<readonly [Literals<...>, Struct<...>, Null]>>;
readonly zdr: optionalKey<Union<readonly [Boolean, Null]>>;
}>, Null]>>;
readonly questions: $Record<String, Union<readonly [Struct<{
readonly criteria: $Record<String, String>;
readonly instructions: String;
readonly type: Literal<"choice">;
}>, Struct<{
readonly criteria: $Array<String>;
readonly instructions: String;
readonly type: Literal<"score">;
}>, Struct<{
readonly criteria: optional<Struct<{
readonly false: String;
readonly true: String;
}>>;
readonly instructions: String;
readonly type: Literal<"noul">;
}>]>>;
readonly session_id: optional<String>;
readonly state: Unknown;
readonly trace: optional<$Record<String, Unknown>>;
readonly user: optional<String>;
}>

DecisionsResponse unstable

Added in v4.0.0 Source

Response body for the alpha Decisions endpoint.

Signature

declare const DecisionsResponse: Struct<{
readonly answers: $Record<String, Union<readonly [Struct<{
readonly choice: String;
readonly confidence: optional<Finite>;
readonly probabilities: optional<$Record<String, Finite>>;
readonly type: Literal<"choice">;
}>, Struct<{
readonly confidence: optional<Finite>;
readonly legend: optional<$Record<String, String>>;
readonly probabilities: optional<$Record<String, Finite>>;
readonly score: Finite;
readonly type: Literal<"score">;
}>, Struct<{
readonly noul: Finite;
readonly type: Literal<"noul">;
}>]>>;
readonly id: optional<String>;
readonly model: String;
readonly provider: optional<String>;
readonly usage: Struct<{
readonly cost: optional<Finite>;
readonly input_tokens: Int;
readonly output_tokens: Int;
}>;
}>

NoulQuestion unstable

Added in v4.0.0 Source

A probability question with optional true and false descriptions.

Signature

declare const NoulQuestion: Struct<{
readonly criteria: optional<Struct<{
readonly false: String;
readonly true: String;
}>>;
readonly instructions: String;
readonly type: Literal<"noul">;
}>

ScoreQuestion unstable

Added in v4.0.0 Source

A score question with ordered criteria.

Signature

declare const ScoreQuestion: Struct<{
readonly criteria: $Array<String>;
readonly instructions: String;
readonly type: Literal<"score">;
}>