1use std::time::Duration;
4
5pub const API_KEY_ENV: &str = "TYPESAFE_API_KEY";
7pub const BASE_URL_ENV: &str = "TYPESAFE_BASE_URL";
9pub const DEFAULT_MODEL_ENV: &str = "TYPESAFE_DEFAULT_MODEL";
11
12pub const DEFAULT_BASE_URL: &str = "https://api.typesafe.ai";
14pub const DEFAULT_MODEL: &str = "jev-latest";
16pub const DEFAULT_TIMEOUT: Duration = Duration::from_secs(10);
18
19pub const VERSION: &str = env!("CARGO_PKG_VERSION");
21pub const SDK_NAME: &str = "typesafe-sdk-rust";
23
24pub(crate) const SYSTEM_ONE_PATH: &str = "/v1/systemone";
25pub(crate) const MODELS_PATH: &str = "/v1/models";
26
27pub(crate) const MAX_ERROR_BODY_LENGTH: usize = 200;
28
29pub(crate) const SDK_HEADER: &str = "x-typesafe-sdk";
30pub(crate) const RUNTIME_HEADER: &str = "x-typesafe-runtime";
31pub(crate) const RETRY_COUNT_HEADER: &str = "x-typesafe-retry-count";
32pub(crate) const REQUEST_ID_HEADER: &str = "x-typesafe-request-id";
33pub(crate) const RETRY_AFTER_HEADER: &str = "retry-after";
34pub(crate) const RETRY_AFTER_MS_HEADER: &str = "retry-after-ms";
35
36pub(crate) const SECRET_HEADERS: [&str; 6] = [
37 "authorization",
38 "proxy-authorization",
39 "x-api-key",
40 "api-key",
41 "cookie",
42 "set-cookie",
43];