import * as z from "zod/v4-mini"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { BenefitGrantCustomProperties, BenefitGrantCustomProperties$Outbound } from "./benefitgrantcustomproperties.js"; import { BenefitGrantDiscordProperties, BenefitGrantDiscordProperties$Outbound } from "./benefitgrantdiscordproperties.js"; import { BenefitGrantDownloadablesProperties, BenefitGrantDownloadablesProperties$Outbound } from "./benefitgrantdownloadablesproperties.js"; import { BenefitGrantFeatureFlagProperties, BenefitGrantFeatureFlagProperties$Outbound } from "./benefitgrantfeatureflagproperties.js"; import { BenefitGrantGitHubRepositoryProperties, BenefitGrantGitHubRepositoryProperties$Outbound } from "./benefitgrantgithubrepositoryproperties.js"; import { BenefitGrantLicenseKeysProperties, BenefitGrantLicenseKeysProperties$Outbound } from "./benefitgrantlicensekeysproperties.js"; import { BenefitType } from "./benefittype.js"; import { MetadataOutputType, MetadataOutputType$Outbound } from "./metadataoutputtype.js"; export type CustomerStateBenefitGrantProperties = BenefitGrantDiscordProperties | BenefitGrantGitHubRepositoryProperties | BenefitGrantDownloadablesProperties | BenefitGrantLicenseKeysProperties | BenefitGrantCustomProperties | BenefitGrantFeatureFlagProperties; /** * An active benefit grant for a customer. */ export type CustomerStateBenefitGrant = { /** * The ID of the grant. */ id: string; /** * Creation timestamp of the object. */ createdAt: Date; /** * Last modification timestamp of the object. */ modifiedAt: Date | null; /** * The timestamp when the benefit was granted. */ grantedAt: Date; /** * The ID of the benefit concerned by this grant. */ benefitId: string; benefitType: BenefitType; benefitMetadata: { [k: string]: MetadataOutputType; }; properties: BenefitGrantDiscordProperties | BenefitGrantGitHubRepositoryProperties | BenefitGrantDownloadablesProperties | BenefitGrantLicenseKeysProperties | BenefitGrantCustomProperties | BenefitGrantFeatureFlagProperties; }; /** @internal */ export declare const CustomerStateBenefitGrantProperties$inboundSchema: z.ZodMiniType; /** @internal */ export type CustomerStateBenefitGrantProperties$Outbound = BenefitGrantDiscordProperties$Outbound | BenefitGrantGitHubRepositoryProperties$Outbound | BenefitGrantDownloadablesProperties$Outbound | BenefitGrantLicenseKeysProperties$Outbound | BenefitGrantCustomProperties$Outbound | BenefitGrantFeatureFlagProperties$Outbound; /** @internal */ export declare const CustomerStateBenefitGrantProperties$outboundSchema: z.ZodMiniType; export declare function customerStateBenefitGrantPropertiesToJSON(customerStateBenefitGrantProperties: CustomerStateBenefitGrantProperties): string; export declare function customerStateBenefitGrantPropertiesFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const CustomerStateBenefitGrant$inboundSchema: z.ZodMiniType; /** @internal */ export type CustomerStateBenefitGrant$Outbound = { id: string; created_at: string; modified_at: string | null; granted_at: string; benefit_id: string; benefit_type: string; benefit_metadata: { [k: string]: MetadataOutputType$Outbound; }; properties: BenefitGrantDiscordProperties$Outbound | BenefitGrantGitHubRepositoryProperties$Outbound | BenefitGrantDownloadablesProperties$Outbound | BenefitGrantLicenseKeysProperties$Outbound | BenefitGrantCustomProperties$Outbound | BenefitGrantFeatureFlagProperties$Outbound; }; /** @internal */ export declare const CustomerStateBenefitGrant$outboundSchema: z.ZodMiniType; export declare function customerStateBenefitGrantToJSON(customerStateBenefitGrant: CustomerStateBenefitGrant): string; export declare function customerStateBenefitGrantFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=customerstatebenefitgrant.d.ts.map