UNPKG

@spartacus/core

Version:

Spartacus - the core framework

87 lines (86 loc) 3.07 kB
import { Store } from '@ngrx/store'; import { Observable } from 'rxjs'; import { UserIdService } from '../../auth/user-auth/facade/user-id.service'; import { Address, AddressValidation, Country, Region } from '../../model/address.model'; import { StateWithProcess } from '../../process/store/process-state'; import { Command, CommandService } from '../../util/command-query/command.service'; import { UserAddressConnector } from '../connectors/address/user-address.connector'; import { StateWithUser } from '../store/user-state'; import * as i0 from "@angular/core"; export declare class UserAddressService { protected store: Store<StateWithUser | StateWithProcess<void>>; protected userIdService: UserIdService; protected userAddressConnector: UserAddressConnector; protected command: CommandService; constructor(store: Store<StateWithUser | StateWithProcess<void>>, userIdService: UserIdService, userAddressConnector: UserAddressConnector, command: CommandService); /** * Retrieves user's addresses */ loadAddresses(): void; /** * Adds user address * @param address a user address */ addUserAddress(address: Address): void; /** * Sets user address as default * @param addressId a user address ID */ setAddressAsDefault(addressId: string): void; /** * Updates existing user address * @param addressId a user address ID * @param address a user address */ updateUserAddress(addressId: string, address: Address): void; /** * Deletes existing user address * @param addressId a user address ID */ deleteUserAddress(addressId: string): void; /** * Returns addresses */ getAddresses(): Observable<Address[]>; /** * Returns a loading flag for addresses */ getAddressesLoading(): Observable<boolean>; getAddressesLoadedSuccess(): Observable<boolean>; /** * Retrieves delivery countries */ loadDeliveryCountries(): void; /** * Returns all delivery countries */ getDeliveryCountries(): Observable<Country[]>; /** * Returns a country based on the provided `isocode` * @param isocode an isocode for a country */ getCountry(isocode: string): Observable<Country>; /** * Retrieves regions for specified country by `countryIsoCode` * @param countryIsoCode */ loadRegions(countryIsoCode: string): void; /** * Clear regions in store - useful when changing country */ clearRegions(): void; /** * Returns all regions */ getRegions(countryIsoCode: string): Observable<Region[]>; /** * Verifies the address * @param address : the address to be verified */ verifyAddress(address: Address): Observable<AddressValidation>; protected userAddressVerificationCommand: Command<{ address: Address; }, AddressValidation>; static ɵfac: i0.ɵɵFactoryDeclaration<UserAddressService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<UserAddressService>; }