import { FetchStateAndError, ID } from '../../commonStateTypes/common'; import { Address } from '../../entity/address/addressState'; import { OfficerType } from '../companyView/types/companyPassport/officerType'; export type AddressUpdatableInfo = Omit; export type AddressType = 'company_address' | 'company_registered_address' | `officer_${OfficerType}_address` | 'vendor_address' | 'user_address' | `credit_custom_shipping_${ID}_address` | `debit_custom_shipping_${ID}_address` | `subscription_billing_address` | `invoicing_customer_billing_address` | `invoicing_subscription_shipping_address` | `invoicing_business_address`; export interface NewAddressData { addressToCreate: AddressUpdatableInfo; addressType: AddressType; status: FetchStateAndError; newAddressId?: ID; parentEntityId?: { entityType: 'user' | 'company' | 'vendor'; id: ID; }; } export interface AddressViewState { fetchAddressState: Record; updateAddressState: Record; newAddressState?: Record; }