import { RedisClientType } from 'redis'; export interface IDuctapeInit { accessKey: string; /** Product tag — optional; inherited when omitted from database/graph/vector calls */ product?: string; /** Environment slug (e.g. dev, prd) — optional */ env?: string; redis_url?: string; /** Route API calls to a self-hosted Ductape instance at localhost:4311 (default: DUCTAPE_LOCAL env var) */ local?: boolean; /** Client IP to attach to emitted log rows */ ip_address?: string; /** Client locale tag to attach to emitted log rows (e.g. en-US) */ language?: string; } /** @internal API host routing — not the product environment slug */ export declare enum EnvType { PRODUCTION = "production", SELF = "self" } export declare function apiEnvironmentFromProcess(): EnvType; export interface IBuilderInit { workspace_id: string; public_key: string; user_id: string; token: string; env_type: EnvType; redis_client?: RedisClientType; queues?: { health: any; jobs: any; }; access_key?: string; /** When set, avoids expensive getWorkspacePrivateKey fetch (e.g. feature execution shares one key). */ workspace_private_key?: string; /** Client IP for log rows */ ip_address?: string; /** Client locale tag for log rows */ language?: string; } export interface ILoggerInit extends IBuilderInit { product_id: string; app_id?: string; }