/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v4-mini"; import { remap as remap$ } from "../../lib/primitives.js"; /** * Properties to create a benefit of type `discord`. */ export type BenefitDiscordCreateProperties = { guildToken: string; /** * The ID of the Discord role to grant. */ roleId: string; /** * Whether to kick the member from the Discord server on revocation. */ kickMember: boolean; }; /** @internal */ export type BenefitDiscordCreateProperties$Outbound = { guild_token: string; role_id: string; kick_member: boolean; }; /** @internal */ export const BenefitDiscordCreateProperties$outboundSchema: z.ZodMiniType< BenefitDiscordCreateProperties$Outbound, BenefitDiscordCreateProperties > = z.pipe( z.object({ guildToken: z.string(), roleId: z.string(), kickMember: z.boolean(), }), z.transform((v) => { return remap$(v, { guildToken: "guild_token", roleId: "role_id", kickMember: "kick_member", }); }), ); export function benefitDiscordCreatePropertiesToJSON( benefitDiscordCreateProperties: BenefitDiscordCreateProperties, ): string { return JSON.stringify( BenefitDiscordCreateProperties$outboundSchema.parse( benefitDiscordCreateProperties, ), ); }