import { AptlyAddress } from './address.js';
import { AptlyBaseSchema } from './extends.js';
import { AptlyUserSchema } from './user.js';
export type AptlyCustomer = AptlyCustomerSchema<string, string>;
export interface AptlyCustomerSchema<ID, DATE> extends Pick<AptlyBaseSchema<ID, DATE>, '_id' | 'createdAt' | 'updatedAt'> {
    organization: ID;
    user?: ID | AptlyUserSchema<ID, DATE> | null;
    email: string;
    fullName: string;
    firstName: string;
    lastName: string;
    phone: string;
    shipping?: AptlyAddress | null;
    billing?: AptlyAddress | null;
    companyName: string;
    companyVat: string;
}
export type AptlyCustomerData = AptlyCustomerDataSchema<string, string>;
export interface AptlyCustomerDataSchema<ID, DATE> {
    customer?: ID | null;
    user?: ID | AptlyUserSchema<ID, DATE> | null;
    email: string;
    firstName: string;
    lastName: string;
    fullName?: string;
    phone?: string;
    companyName?: string;
    companyVat?: string;
}
