/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */

import * as z from "zod/v3";

export type DeleteAiGatewayVirtualModelConfigRequest = {
  ownerId?: string | undefined;
  virtualModelSlug: string;
  updatedBy?: string | undefined;
  actingIp?: string | undefined;
  actingUserAgent?: string | undefined;
  /**
   * The Team identifier to perform the request on behalf of.
   */
  teamId?: string | undefined;
  /**
   * The Team slug to perform the request on behalf of.
   */
  slug?: string | undefined;
};

/** @internal */
export type DeleteAiGatewayVirtualModelConfigRequest$Outbound = {
  ownerId?: string | undefined;
  virtualModelSlug: string;
  updatedBy?: string | undefined;
  actingIp?: string | undefined;
  actingUserAgent?: string | undefined;
  teamId?: string | undefined;
  slug?: string | undefined;
};

/** @internal */
export const DeleteAiGatewayVirtualModelConfigRequest$outboundSchema: z.ZodType<
  DeleteAiGatewayVirtualModelConfigRequest$Outbound,
  z.ZodTypeDef,
  DeleteAiGatewayVirtualModelConfigRequest
> = z.object({
  ownerId: z.string().optional(),
  virtualModelSlug: z.string(),
  updatedBy: z.string().optional(),
  actingIp: z.string().optional(),
  actingUserAgent: z.string().optional(),
  teamId: z.string().optional(),
  slug: z.string().optional(),
});

export function deleteAiGatewayVirtualModelConfigRequestToJSON(
  deleteAiGatewayVirtualModelConfigRequest:
    DeleteAiGatewayVirtualModelConfigRequest,
): string {
  return JSON.stringify(
    DeleteAiGatewayVirtualModelConfigRequest$outboundSchema.parse(
      deleteAiGatewayVirtualModelConfigRequest,
    ),
  );
}
