import * as z from "zod/v4-mini";
import { AddressInput, AddressInput$Outbound } from "./addressinput.js";
import { MemberOwnerCreate, MemberOwnerCreate$Outbound } from "./memberownercreate.js";
export type CustomerTeamCreateMetadata = string | number | number | boolean;
export type CustomerTeamCreate = {
    /**
     * Key-value object allowing you to store additional information.
     *
     * @remarks
     *
     * The key must be a string with a maximum length of **40 characters**.
     * The value must be either:
     *
     * * A string with a maximum length of **500 characters**
     * * An integer
     * * A floating-point number
     * * A boolean
     *
     * You can store up to **50 key-value pairs**.
     */
    metadata?: {
        [k: string]: string | number | number | boolean;
    } | undefined;
    /**
     * 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;
    name?: string | null | undefined;
    billingAddress?: AddressInput | null | undefined;
    taxId?: string | null | undefined;
    locale?: string | null | undefined;
    /**
     * The ID of the organization owning the customer. **Required unless you use an organization token.**
     */
    organizationId?: string | null | undefined;
    /**
     * Optional owner member to create with the customer. If not provided, an owner member will be automatically created using the customer's email and name.
     */
    owner?: MemberOwnerCreate | null | undefined;
    type: "team";
    /**
     * The email address of the team customer. Optional for team customers — if omitted, an owner with an email must be provided.
     */
    email?: string | null | undefined;
};
/** @internal */
export type CustomerTeamCreateMetadata$Outbound = string | number | number | boolean;
/** @internal */
export declare const CustomerTeamCreateMetadata$outboundSchema: z.ZodMiniType<CustomerTeamCreateMetadata$Outbound, CustomerTeamCreateMetadata>;
export declare function customerTeamCreateMetadataToJSON(customerTeamCreateMetadata: CustomerTeamCreateMetadata): string;
/** @internal */
export type CustomerTeamCreate$Outbound = {
    metadata?: {
        [k: string]: string | number | number | boolean;
    } | undefined;
    external_id?: string | null | undefined;
    name?: string | null | undefined;
    billing_address?: AddressInput$Outbound | null | undefined;
    tax_id?: string | null | undefined;
    locale?: string | null | undefined;
    organization_id?: string | null | undefined;
    owner?: MemberOwnerCreate$Outbound | null | undefined;
    type: "team";
    email?: string | null | undefined;
};
/** @internal */
export declare const CustomerTeamCreate$outboundSchema: z.ZodMiniType<CustomerTeamCreate$Outbound, CustomerTeamCreate>;
export declare function customerTeamCreateToJSON(customerTeamCreate: CustomerTeamCreate): string;
//# sourceMappingURL=customerteamcreate.d.ts.map