import * as z from "zod/v4-mini"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { Address, Address$Outbound } from "./address.js"; import { CustomerStateBenefitGrant, CustomerStateBenefitGrant$Outbound } from "./customerstatebenefitgrant.js"; import { CustomerStateMeter, CustomerStateMeter$Outbound } from "./customerstatemeter.js"; import { CustomerStateSubscription, CustomerStateSubscription$Outbound } from "./customerstatesubscription.js"; import { MetadataOutputType, MetadataOutputType$Outbound } from "./metadataoutputtype.js"; import { TaxIDFormat } from "./taxidformat.js"; export type CustomerStateIndividualTaxId = string | TaxIDFormat; /** * A customer along with additional state information: * * @remarks * * * Active subscriptions * * Granted benefits * * Active meters */ export type CustomerStateIndividual = { /** * The ID of the customer. */ id: string; /** * Creation timestamp of the object. */ createdAt: Date; /** * Last modification timestamp of the object. */ modifiedAt: Date | null; metadata: { [k: string]: MetadataOutputType; }; /** * The ID of the customer in your system. This must be unique within the organization. Once set, it can't be updated. */ externalId?: string | null | undefined; /** * The email address of the customer. This must be unique within the organization. */ email: string; /** * Whether the customer email address is verified. The address is automatically verified when the customer accesses the customer portal using their email address. */ emailVerified: boolean; /** * The type of customer. */ type: "individual"; /** * The name of the customer. */ name: string | null; billingAddress: Address | null; taxId: Array | null; locale?: string | null | undefined; /** * The ID of the organization owning the customer. */ organizationId: string; /** * The ID of the customer's default payment method, if any. Use the payment methods endpoint to retrieve its details. */ defaultPaymentMethodId?: string | null | undefined; /** * Timestamp for when the customer was soft deleted. */ deletedAt: Date | null; /** * The customer's active subscriptions. */ activeSubscriptions: Array; /** * The customer's active benefit grants. */ grantedBenefits: Array; /** * The customer's active meters. */ activeMeters: Array; avatarUrl: string; }; /** @internal */ export declare const CustomerStateIndividualTaxId$inboundSchema: z.ZodMiniType; /** @internal */ export type CustomerStateIndividualTaxId$Outbound = string | string; /** @internal */ export declare const CustomerStateIndividualTaxId$outboundSchema: z.ZodMiniType; export declare function customerStateIndividualTaxIdToJSON(customerStateIndividualTaxId: CustomerStateIndividualTaxId): string; export declare function customerStateIndividualTaxIdFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const CustomerStateIndividual$inboundSchema: z.ZodMiniType; /** @internal */ export type CustomerStateIndividual$Outbound = { id: string; created_at: string; modified_at: string | null; metadata: { [k: string]: MetadataOutputType$Outbound; }; external_id?: string | null | undefined; email: string; email_verified: boolean; type: "individual"; name: string | null; billing_address: Address$Outbound | null; tax_id: Array | null; locale?: string | null | undefined; organization_id: string; default_payment_method_id?: string | null | undefined; deleted_at: string | null; active_subscriptions: Array; granted_benefits: Array; active_meters: Array; avatar_url: string; }; /** @internal */ export declare const CustomerStateIndividual$outboundSchema: z.ZodMiniType; export declare function customerStateIndividualToJSON(customerStateIndividual: CustomerStateIndividual): string; export declare function customerStateIndividualFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=customerstateindividual.d.ts.map