import { APIResource } from "../../resource.js"; import * as Core from "../../core.js"; export declare class DynamicRouting extends APIResource { /** * Create a new AI Gateway Dynamic Route. * * @example * ```ts * const dynamicRouting = * await client.aiGateway.dynamicRouting.create('54442216', { * account_id: '0d37909e38d3e99c29fa2cd343ac421a', * elements: [ * { * id: 'id', * outputs: { next: { elementId: 'elementId' } }, * type: 'start', * }, * ], * name: 'name', * }); * ``` */ create(gatewayId: string, params: DynamicRoutingCreateParams, options?: Core.RequestOptions): Core.APIPromise; /** * Update an AI Gateway Dynamic Route. * * @example * ```ts * const dynamicRouting = * await client.aiGateway.dynamicRouting.update( * '54442216', * '54442216', * { * account_id: '0d37909e38d3e99c29fa2cd343ac421a', * name: 'Route Name', * }, * ); * ``` */ update(gatewayId: string, id: string, params: DynamicRoutingUpdateParams, options?: Core.RequestOptions): Core.APIPromise; /** * List all AI Gateway Dynamic Routes. * * @example * ```ts * const dynamicRoutings = * await client.aiGateway.dynamicRouting.list('54442216', { * account_id: '0d37909e38d3e99c29fa2cd343ac421a', * }); * ``` */ list(gatewayId: string, params: DynamicRoutingListParams, options?: Core.RequestOptions): Core.APIPromise; /** * Delete an AI Gateway Dynamic Route. * * @example * ```ts * const dynamicRouting = * await client.aiGateway.dynamicRouting.delete( * '54442216', * '54442216', * { account_id: '0d37909e38d3e99c29fa2cd343ac421a' }, * ); * ``` */ delete(gatewayId: string, id: string, params: DynamicRoutingDeleteParams, options?: Core.RequestOptions): Core.APIPromise; /** * Create a new AI Gateway Dynamic Route Deployment. * * @example * ```ts * const response = * await client.aiGateway.dynamicRouting.createDeployment( * '54442216', * '54442216', * { * account_id: '0d37909e38d3e99c29fa2cd343ac421a', * version_id: '54442216', * }, * ); * ``` */ createDeployment(gatewayId: string, id: string, params: DynamicRoutingCreateDeploymentParams, options?: Core.RequestOptions): Core.APIPromise; /** * Create a new AI Gateway Dynamic Route Version. * * @example * ```ts * const response = * await client.aiGateway.dynamicRouting.createVersion( * '54442216', * '54442216', * { * account_id: '0d37909e38d3e99c29fa2cd343ac421a', * elements: [ * { * id: 'id', * outputs: { next: { elementId: 'elementId' } }, * type: 'start', * }, * ], * }, * ); * ``` */ createVersion(gatewayId: string, id: string, params: DynamicRoutingCreateVersionParams, options?: Core.RequestOptions): Core.APIPromise; /** * Get an AI Gateway Dynamic Route. * * @example * ```ts * const dynamicRouting = * await client.aiGateway.dynamicRouting.get( * '54442216', * '54442216', * { account_id: '0d37909e38d3e99c29fa2cd343ac421a' }, * ); * ``` */ get(gatewayId: string, id: string, params: DynamicRoutingGetParams, options?: Core.RequestOptions): Core.APIPromise; /** * Get an AI Gateway Dynamic Route Version. * * @example * ```ts * const response = * await client.aiGateway.dynamicRouting.getVersion( * '54442216', * '54442216', * '54442216', * { account_id: '0d37909e38d3e99c29fa2cd343ac421a' }, * ); * ``` */ getVersion(gatewayId: string, id: string, versionId: string, params: DynamicRoutingGetVersionParams, options?: Core.RequestOptions): Core.APIPromise; /** * List all AI Gateway Dynamic Route Deployments. * * @example * ```ts * const response = * await client.aiGateway.dynamicRouting.listDeployments( * '54442216', * '54442216', * { account_id: '0d37909e38d3e99c29fa2cd343ac421a' }, * ); * ``` */ listDeployments(gatewayId: string, id: string, params: DynamicRoutingListDeploymentsParams, options?: Core.RequestOptions): Core.APIPromise; /** * List all AI Gateway Dynamic Route Versions. * * @example * ```ts * const response = * await client.aiGateway.dynamicRouting.listVersions( * '54442216', * '54442216', * { account_id: '0d37909e38d3e99c29fa2cd343ac421a' }, * ); * ``` */ listVersions(gatewayId: string, id: string, params: DynamicRoutingListVersionsParams, options?: Core.RequestOptions): Core.APIPromise; } export interface DynamicRoutingCreateResponse { id: string; created_at: string; deployment: DynamicRoutingCreateResponse.Deployment; elements: Array; gateway_id: string; modified_at: string; name: string; version: DynamicRoutingCreateResponse.Version; } export declare namespace DynamicRoutingCreateResponse { interface Deployment { created_at: string; deployment_id: string; version_id: string; } interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } interface Version { active: 'true' | 'false'; created_at: string; data: string; version_id: string; is_valid?: boolean; } } export interface DynamicRoutingUpdateResponse { route: DynamicRoutingUpdateResponse.Route; success: boolean; } export declare namespace DynamicRoutingUpdateResponse { interface Route { id: string; account_tag: string; created_at: string; deployment: Route.Deployment; elements: Array; gateway_id: string; modified_at: string; name: string; version: Route.Version; } namespace Route { interface Deployment { created_at: string; deployment_id: string; version_id: string; } interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } interface Version { active: 'true' | 'false'; created_at: string; data: string; version_id: string; is_valid?: boolean; } } } export interface DynamicRoutingListResponse { data: DynamicRoutingListResponse.Data; success: boolean; } export declare namespace DynamicRoutingListResponse { interface Data { order_by: string; order_by_direction: string; page: number; per_page: number; routes: Array; } namespace Data { interface Route { id: string; account_tag: string; created_at: string; deployment: Route.Deployment; elements: Array; gateway_id: string; modified_at: string; name: string; version: Route.Version; } namespace Route { interface Deployment { created_at: string; deployment_id: string; version_id: string; } interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } interface Version { active: 'true' | 'false'; created_at: string; data: string; version_id: string; is_valid?: boolean; } } } } export interface DynamicRoutingDeleteResponse { id: string; created_at: string; elements: Array; gateway_id: string; modified_at: string; name: string; } export declare namespace DynamicRoutingDeleteResponse { interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } } export interface DynamicRoutingCreateDeploymentResponse { id: string; created_at: string; elements: Array; gateway_id: string; modified_at: string; name: string; } export declare namespace DynamicRoutingCreateDeploymentResponse { interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } } export interface DynamicRoutingCreateVersionResponse { id: string; created_at: string; elements: Array; gateway_id: string; modified_at: string; name: string; } export declare namespace DynamicRoutingCreateVersionResponse { interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } } export interface DynamicRoutingGetResponse { id: string; created_at: string; deployment: DynamicRoutingGetResponse.Deployment; elements: Array; gateway_id: string; modified_at: string; name: string; version: DynamicRoutingGetResponse.Version; } export declare namespace DynamicRoutingGetResponse { interface Deployment { created_at: string; deployment_id: string; version_id: string; } interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } interface Version { active: 'true' | 'false'; created_at: string; data: string; version_id: string; is_valid?: boolean; } } export interface DynamicRoutingGetVersionResponse { id: string; active: 'true' | 'false'; created_at: string; data: string; elements: Array; gateway_id: string; modified_at: string; name: string; version_id: string; is_valid?: boolean; } export declare namespace DynamicRoutingGetVersionResponse { interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } } export interface DynamicRoutingListDeploymentsResponse { data: DynamicRoutingListDeploymentsResponse.Data; success: boolean; } export declare namespace DynamicRoutingListDeploymentsResponse { interface Data { deployments: Array; order_by: string; order_by_direction: string; page: number; per_page: number; } namespace Data { interface Deployment { created_at: string; deployment_id: string; version_id: string; } } } export interface DynamicRoutingListVersionsResponse { data: DynamicRoutingListVersionsResponse.Data; success: boolean; } export declare namespace DynamicRoutingListVersionsResponse { interface Data { order_by: string; order_by_direction: string; page: number; per_page: number; versions: Array; } namespace Data { interface Version { active: 'true' | 'false'; created_at: string; data: string; version_id: string; is_valid?: boolean; } } } export interface DynamicRoutingCreateParams { /** * Path param */ account_id: string; /** * Body param */ elements: Array; /** * Body param */ name: string; } export declare namespace DynamicRoutingCreateParams { interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } } export interface DynamicRoutingUpdateParams { /** * Path param */ account_id: string; /** * Body param */ name: string; } export interface DynamicRoutingListParams { /** * Path param */ account_id: string; /** * Query param: Page number */ page?: number; /** * Query param: Number of routes per page */ per_page?: number; } export interface DynamicRoutingDeleteParams { account_id: string; } export interface DynamicRoutingCreateDeploymentParams { /** * Path param */ account_id: string; /** * Body param */ version_id: string; } export interface DynamicRoutingCreateVersionParams { /** * Path param */ account_id: string; /** * Body param */ elements: Array; } export declare namespace DynamicRoutingCreateVersionParams { interface UnionMember0 { id: string; outputs: UnionMember0.Outputs; type: 'start'; } namespace UnionMember0 { interface Outputs { next: Outputs.Next; } namespace Outputs { interface Next { elementId: string; } } } interface UnionMember1 { id: string; outputs: UnionMember1.Outputs; properties: UnionMember1.Properties; type: 'conditional'; } namespace UnionMember1 { interface Outputs { false: Outputs.False; true: Outputs.True; } namespace Outputs { interface False { elementId: string; } interface True { elementId: string; } } interface Properties { conditions?: unknown; } } interface UnionMember2 { id: string; outputs: { [key: string]: UnionMember2.Outputs; }; type: 'percentage'; } namespace UnionMember2 { interface Outputs { elementId: string; } } interface UnionMember3 { id: string; outputs: UnionMember3.Outputs; properties: UnionMember3.Properties; type: 'rate'; } namespace UnionMember3 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { key: string; limit: number; limitType: 'count' | 'cost'; window: number; } } interface UnionMember4 { id: string; outputs: UnionMember4.Outputs; properties: UnionMember4.Properties; type: 'model'; } namespace UnionMember4 { interface Outputs { fallback: Outputs.Fallback; success: Outputs.Success; } namespace Outputs { interface Fallback { elementId: string; } interface Success { elementId: string; } } interface Properties { model: string; provider: string; retries: number; timeout: number; } } interface UnionMember5 { id: string; outputs: { [key: string]: UnionMember5.Outputs; }; type: 'end'; } namespace UnionMember5 { interface Outputs { elementId: string; } } } export interface DynamicRoutingGetParams { account_id: string; } export interface DynamicRoutingGetVersionParams { account_id: string; } export interface DynamicRoutingListDeploymentsParams { account_id: string; } export interface DynamicRoutingListVersionsParams { account_id: string; } export declare namespace DynamicRouting { export { type DynamicRoutingCreateResponse as DynamicRoutingCreateResponse, type DynamicRoutingUpdateResponse as DynamicRoutingUpdateResponse, type DynamicRoutingListResponse as DynamicRoutingListResponse, type DynamicRoutingDeleteResponse as DynamicRoutingDeleteResponse, type DynamicRoutingCreateDeploymentResponse as DynamicRoutingCreateDeploymentResponse, type DynamicRoutingCreateVersionResponse as DynamicRoutingCreateVersionResponse, type DynamicRoutingGetResponse as DynamicRoutingGetResponse, type DynamicRoutingGetVersionResponse as DynamicRoutingGetVersionResponse, type DynamicRoutingListDeploymentsResponse as DynamicRoutingListDeploymentsResponse, type DynamicRoutingListVersionsResponse as DynamicRoutingListVersionsResponse, type DynamicRoutingCreateParams as DynamicRoutingCreateParams, type DynamicRoutingUpdateParams as DynamicRoutingUpdateParams, type DynamicRoutingListParams as DynamicRoutingListParams, type DynamicRoutingDeleteParams as DynamicRoutingDeleteParams, type DynamicRoutingCreateDeploymentParams as DynamicRoutingCreateDeploymentParams, type DynamicRoutingCreateVersionParams as DynamicRoutingCreateVersionParams, type DynamicRoutingGetParams as DynamicRoutingGetParams, type DynamicRoutingGetVersionParams as DynamicRoutingGetVersionParams, type DynamicRoutingListDeploymentsParams as DynamicRoutingListDeploymentsParams, type DynamicRoutingListVersionsParams as DynamicRoutingListVersionsParams, }; } //# sourceMappingURL=dynamic-routing.d.ts.map