import * as z from "zod/v4-mini"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { BenefitFeatureFlag, BenefitFeatureFlag$Outbound } from "./benefitfeatureflag.js"; import { BenefitGrantError, BenefitGrantError$Outbound } from "./benefitgranterror.js"; import { BenefitGrantFeatureFlagProperties, BenefitGrantFeatureFlagProperties$Outbound } from "./benefitgrantfeatureflagproperties.js"; import { Customer, Customer$Outbound } from "./customer.js"; import { Member, Member$Outbound } from "./member.js"; export type BenefitGrantFeatureFlagWebhook = { /** * Creation timestamp of the object. */ createdAt: Date; /** * Last modification timestamp of the object. */ modifiedAt: Date | null; /** * The ID of the grant. */ id: string; /** * The timestamp when the benefit was granted. If `None`, the benefit is not granted. */ grantedAt?: Date | null | undefined; /** * Whether the benefit is granted. */ isGranted: boolean; /** * The timestamp when the benefit was revoked. If `None`, the benefit is not revoked. */ revokedAt?: Date | null | undefined; /** * Whether the benefit is revoked. */ isRevoked: boolean; /** * The ID of the subscription that granted this benefit. */ subscriptionId: string | null; /** * The ID of the order that granted this benefit. */ orderId: string | null; /** * The ID of the customer concerned by this grant. */ customerId: string; /** * The ID of the member concerned by this grant. */ memberId?: string | null | undefined; /** * The ID of the benefit concerned by this grant. */ benefitId: string; /** * The error information if the benefit grant failed with an unrecoverable error. */ error?: BenefitGrantError | null | undefined; customer: Customer; member?: Member | null | undefined; /** * A benefit of type `feature_flag`. * * @remarks * * Use it to grant feature flags with key-value metadata * that can be queried via the API and webhooks. */ benefit: BenefitFeatureFlag; properties: BenefitGrantFeatureFlagProperties; previousProperties?: BenefitGrantFeatureFlagProperties | null | undefined; }; /** @internal */ export declare const BenefitGrantFeatureFlagWebhook$inboundSchema: z.ZodMiniType; /** @internal */ export type BenefitGrantFeatureFlagWebhook$Outbound = { created_at: string; modified_at: string | null; id: string; granted_at?: string | null | undefined; is_granted: boolean; revoked_at?: string | null | undefined; is_revoked: boolean; subscription_id: string | null; order_id: string | null; customer_id: string; member_id?: string | null | undefined; benefit_id: string; error?: BenefitGrantError$Outbound | null | undefined; customer: Customer$Outbound; member?: Member$Outbound | null | undefined; benefit: BenefitFeatureFlag$Outbound; properties: BenefitGrantFeatureFlagProperties$Outbound; previous_properties?: BenefitGrantFeatureFlagProperties$Outbound | null | undefined; }; /** @internal */ export declare const BenefitGrantFeatureFlagWebhook$outboundSchema: z.ZodMiniType; export declare function benefitGrantFeatureFlagWebhookToJSON(benefitGrantFeatureFlagWebhook: BenefitGrantFeatureFlagWebhook): string; export declare function benefitGrantFeatureFlagWebhookFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=benefitgrantfeatureflagwebhook.d.ts.map