import type { Optional } from "@johnqh/types"; import type { WildduckConfig } from "@johnqh/types"; interface WildduckAddress { id: string; address: string; name?: string; main: boolean; created: string; tags?: string[]; } interface CreateAddressParams { address: string; name?: string; main?: boolean; tags?: string[]; } interface UpdateAddressParams { name?: string; main?: boolean; tags?: string[]; } interface ForwardedAddress { id: string; address: string; forwarded: boolean; target: string; user?: string; } interface UseWildduckAddressesReturn { addresses: WildduckAddress[]; isLoading: boolean; error: Optional; getUserAddresses: (userId: string) => Promise; getForwardedAddresses: () => Promise; resolveAddress: (address: string) => Promise<{ success: boolean; user?: string; }>; refresh: (userId: string) => Promise; createAddress: (userId: string, params: CreateAddressParams) => Promise<{ success: boolean; id: string; }>; isCreating: boolean; createError: Optional; updateAddress: (userId: string, addressId: string, params: UpdateAddressParams) => Promise<{ success: boolean; }>; isUpdating: boolean; updateError: Optional; deleteAddress: (userId: string, addressId: string) => Promise<{ success: boolean; }>; isDeleting: boolean; deleteError: Optional; createForwardedAddress: (address: string, target: string) => Promise<{ success: boolean; id: string; }>; deleteForwardedAddress: (addressId: string) => Promise<{ success: boolean; }>; clearError: () => void; } declare const useWildduckAddresses: (config: WildduckConfig, devMode?: boolean) => UseWildduckAddressesReturn; export { useWildduckAddresses, type WildduckAddress, type CreateAddressParams, type UpdateAddressParams, type ForwardedAddress, type UseWildduckAddressesReturn, }; //# sourceMappingURL=useWildduckAddresses.d.ts.map