/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 2aee5328172d */ import * as z from "zod/v3"; import { AdditionalFieldDefinition, AdditionalFieldDefinition$Outbound, AdditionalFieldDefinition$outboundSchema, } from "./additionalfielddefinition.js"; import { DatasourceProfile, DatasourceProfile$Outbound, DatasourceProfile$outboundSchema, } from "./datasourceprofile.js"; import { TeamEmail, TeamEmail$Outbound, TeamEmail$outboundSchema, } from "./teamemail.js"; import { TeamMember, TeamMember$Outbound, TeamMember$outboundSchema, } from "./teammember.js"; /** * Information about an employee's team */ export type TeamInfoDefinition = { /** * The unique ID of the team */ id: string; /** * Human-readable team name */ name: string; /** * The description of this team */ description?: string | undefined; /** * Typically the highest level organizational unit; generally applies to bigger companies with multiple distinct businesses. */ businessUnit?: string | undefined; /** * An organizational unit where everyone has a similar task, e.g. `Engineering`. */ department?: string | undefined; /** * A link to the team's photo */ photoUrl?: string | undefined; /** * A link to an external team page. If set, team results will link to it. * * @remarks */ externalLink?: string | undefined; /** * The emails of the team */ emails?: Array | undefined; /** * The datasource profiles of the team, e.g. `Slack`,`Github`. */ datasourceProfiles?: Array | undefined; /** * The members of the team */ members: Array; /** * List of additional fields with more information about the team. */ additionalFields?: Array | undefined; }; /** @internal */ export type TeamInfoDefinition$Outbound = { id: string; name: string; description?: string | undefined; businessUnit?: string | undefined; department?: string | undefined; photoUrl?: string | undefined; externalLink?: string | undefined; emails?: Array | undefined; datasourceProfiles?: Array | undefined; members: Array; additionalFields?: Array | undefined; }; /** @internal */ export const TeamInfoDefinition$outboundSchema: z.ZodType< TeamInfoDefinition$Outbound, z.ZodTypeDef, TeamInfoDefinition > = z.object({ id: z.string(), name: z.string(), description: z.string().optional(), businessUnit: z.string().optional(), department: z.string().optional(), photoUrl: z.string().optional(), externalLink: z.string().optional(), emails: z.array(TeamEmail$outboundSchema).optional(), datasourceProfiles: z.array(DatasourceProfile$outboundSchema).optional(), members: z.array(TeamMember$outboundSchema), additionalFields: z.array(AdditionalFieldDefinition$outboundSchema) .optional(), }); export function teamInfoDefinitionToJSON( teamInfoDefinition: TeamInfoDefinition, ): string { return JSON.stringify( TeamInfoDefinition$outboundSchema.parse(teamInfoDefinition), ); }