export interface Address { addressId: string addressQuery?: string addressType: string city?: string complement?: string country?: string geoCoordinates?: number[] neighborhood?: string number?: string postalCode?: string receiverName?: string reference?: string state?: string street?: string } export interface NewAddress { addressId?: string addressQuery?: string addressType?: string city?: string complement?: string country?: string geoCoordinates?: number[] neighborhood?: string number?: string postalCode?: string receiverName?: string reference?: string state?: string street?: string } export interface AddressWithValidation { addressId: AddressField addressQuery?: AddressField addressType: AddressField city?: AddressField complement?: AddressField country?: AddressField geoCoordinates?: AddressField neighborhood?: AddressField number?: AddressField postalCode?: AddressField receiverName?: AddressField reference?: AddressField state?: AddressField street?: AddressField } export interface AddressField { value: string | number[] valid: boolean | null } export interface DeliveryOption { id: string price: number estimate: string isSelected: boolean } export interface CheckoutAddress { addressType: string receiverName: string addressId: string postalCode: string city: string state: string country: string street: string number: string neighborhood: string complement: string reference: string | null geoCoordinates: number[] }