import Api from "../../lib/Api"; import { IPartnerAccountRelationCreateInput, IPartnerAccountRelationDeleteInput, IGetUserPartnerAccountRelationsInput, IUserPartnerAccountRelation } from "../../partner-types"; import { IPartnerDataOptions, IRegisterUserAddressInput, IRegisterUserInput, IUpdateUserAddressInput, IUser, IUserAddress, IUserChild, IUserChildCreateInput, IUserChildUpdateInput, IUserConfirmLegalFormsInput, IUserDataOptions, IUserFavourites, IUserFavouritesAddInput, IUserFavouritesDeleteInput, IUserLegalFormsItems, IUserOwner, IUserPartial, IUserPartnerRelationFromGet, IUserPet, IUserPetBmiEntry, IUserPetBmiEntryAddInput, IUserPetCreateInput, IUserPetDeleteInput, IUserPetPlaceOfPurchase, IUserPetPlaceOfPurchaseDeleteInput, IUserPetPlaceOfPurchaseUpdateInput, IUserPetUpdateInput, IUserPetWeightEntry, IUserPetWeightEntryAddInput, IUserPlaceOfPurchase, IUserPreferences, IUserSegment, IUserUpdateInput, IUserUpdatePlacesOfPurchaseInput, IUserUpdateSubscriptionsInput, IUserPetDataOptions, IUsetPetWithOwner, IUserPetDietRecommendationAddInput, IUserPetDietRecommendationEntry, IUserPetDietRecommendationDeleteInput, IAddUserTagsInput, IDeleteUserTagsInput, ISocialNetwork, ISocialNetworkInput, ISocialNetworkDeleteInput, IAddPetTagsInput, IDeletePetTagsInput } from "../../types"; export interface IUserGetPartnerAccountRelationsResult { clientof: IUserPartnerRelationFromGet[]; partof: IUserPartnerRelationFromGet[]; } export default class Identity extends Api { errorMap: { 9: { message: string; }; 19: { message: string; }; }; deleteUser(data: { user_guid: string; user_context?: string; }): Promise; updateRecoveredPassword(data: { token: string; password: string; }): Promise<{ statusCode: number; data: { user_guid: string; }; }>; checkPasswordTokenValidity(data: { token: string; }): Promise; getAccessToken(data: { session_token: string; ttl: string | number; }): Promise<{ statusCode: 0; data: { token: string; }; }>; deleteAccessToken(data: { token: string; }): Promise; findAccountByPhone(data: { mobile_no: string; include_loyalty_cards?: boolean; }): Promise; findAccountByEmail(data: { email: string; include_user_type?: string; user_context?: string; }): Promise; findAccountByPublicToken(data: { token: string; }): Promise<{ data: { user_guid: string; user_updated_on: string; }; }>; findAccountByPartnerExtId(data: { partner_ext_id: string; }): Promise; recoverPassword(data: { uid: string; mode?: "link" | "password" | "remoteform"; url?: string; user_context?: string; }): Promise; recoverPasswordSMS(data: { mobile: string; message?: string; }): Promise; register(data: IRegisterUserInput): Promise<{ data: IUser; }>; forceActivate(data: { user_guid: string; }): Promise; confirmUserAccount(data: { identifier: string; }): Promise; update(data: IUserUpdateInput, options?: { locale?: string; }): Promise<{ data: IUserOwner; }>; getUserList(data: { first_name: string; last_name: string; email: string; postcode: string; mobile: string; partner_ext_id: string; partner_relationship: string; page: number; records_per_page: number; }): Promise; retrieveUserSubscriptions(data: { user_guid: string; }): Promise<{ data: IUserPreferences; }>; updateSubscriptions(data: IUserUpdateSubscriptionsInput): Promise<{ statusCode: number; data: IUserPreferences; }>; retrieveUserPlacesOfPurchase(data: { user_guid: string; }): Promise<{ data: null | IUserPlaceOfPurchase[]; }>; updateUserPlacesOfPurchase(data: IUserUpdatePlacesOfPurchaseInput): Promise; deleteUserPlacesOfPurchase(data: { user_guid: string; place_id: string; }): Promise; listUserAddress(data: { user_guid: string; }): Promise<{ data: IUserAddress[]; }>; registerUserAddress(data: IRegisterUserAddressInput): Promise<{ data: IUserAddress; }>; updateUserAddress(data: IUpdateUserAddressInput): Promise<{ data: IUserAddress; }>; deleteUserAddress(data: { user_guid: string; address_id: string; }): Promise; confirmLegalForm(data: IUserConfirmLegalFormsInput): Promise; getConfirmedLegalForm(data: { user_guid: string; }): Promise<{ data: IUserLegalFormsItems[]; }>; revokeLegalForm(data: { legal_form_code: string; user_guid: string; send_notification?: "1"; }): Promise; authenticate(data: { identifier: string; password: string; data_options?: IUserDataOptions; partner_data_options?: string; pet_data_options?: IUserPetDataOptions; pet_partner_type?: string; related_partners_filter_relation?: "clientof" | "partof"; related_partners_filter_types?: string; related_partners_filter_groups?: string; related_partners_filter_roles?: string; user_context?: string; }, options?: { locale?: string; }): Promise; authenticateByGUID(data: { user_guid: string; data_options?: IUserDataOptions; }): Promise; authenticateBySessionToken(data: { session_token: string; data_options?: IUserDataOptions; }): Promise; authenticateByAccessToken({ data_options, ...data }: { access_token: string; data_options?: IUserDataOptions; partner_data_options?: IPartnerDataOptions; pet_data_options?: IUserPetDataOptions; pet_partner_type?: string; related_partners_filter_relation?: "clientof" | "partof"; related_partners_filter_types?: string; related_partners_filter_groups?: string; related_partners_filter_roles?: string; user_context?: string; }): Promise; authenticateByEmail(data: { email: string; data_options?: IUserDataOptions; }): Promise; authenticateByExternalId({ data_options, partner_data_options, pet_data_options, ...data }: { user_ext_id: string; data_options?: IUserDataOptions; pet_data_options?: IUserPetDataOptions; partner_data_options?: IPartnerDataOptions; pet_partner_type?: string; related_partners_filter_xxxx?: string; }): Promise; createAuthCode(data: { type: "email" | "mobile"; value: string; ttl: number; }): Promise; authenticateByCode(data: { auth_code: string; data_options?: IUserDataOptions; }): Promise; getPartnerAccountRelations(data: { user_guid: string; partner_relationship?: "clientof" | "partof"; partner_relationship_role?: string; partner_groups?: string | string[]; show_not_accepted?: string; data_options?: IPartnerDataOptions; page?: string | number; records_per_page?: string | number; }): Promise<{ data: IUserGetPartnerAccountRelationsResult; }>; createPartnerAccountRelation(data: IPartnerAccountRelationCreateInput): Promise; updatePartnerAccountRelation(data: IPartnerAccountRelationCreateInput): Promise; deletePartnerAccountRelation(data: IPartnerAccountRelationDeleteInput): Promise; getUserPartnerAccountRelations(data: IGetUserPartnerAccountRelationsInput): Promise<{ data: { records: { accepted: IUserPartnerAccountRelation[]; }; page: string; records_per_page: string; total_record_count: string; total_pages: number; recordsPerPage: string; totalRecordCount: string; totalPages: number; } | null; }>; getPets(data: { user_guid: string; data_options?: IUserPetDataOptions; }, options?: { locale?: string; }): Promise<{ data: IUserPet[]; }>; getPet(data: { pet_guid: string; data_options?: IUserPetDataOptions; }): Promise<{ data: IUsetPetWithOwner; }>; getPetByExternalId(data: { pet_ext_id: string; data_options?: IUserPetDataOptions; }): Promise<{ data: IUsetPetWithOwner; statusCode: number; }>; createPet(data: IUserPetCreateInput): Promise<{ data: IUserPet; }>; deletePet(data: IUserPetDeleteInput): Promise; getPetDeletionCauses(data: { lang?: string; }): Promise; updatePet(data: IUserPetUpdateInput): Promise<{ data: IUserPet; }>; getPetPictureUrl(data: { pet_guid: string; w?: number; h?: number; }): string; updatePetPicture(data: { pet_guid: string; pet_picture: IUserPetUpdateInput["pet_picture"]; }): Promise<{ statusCode: number; }>; updatePetPlaceOfPurchase(data: IUserPetPlaceOfPurchaseUpdateInput): Promise<{ statusCode: number; }>; retrievePetPlaceOfPurchase(data: { pet_guid: string; }): Promise<{ data: IUserPetPlaceOfPurchase[] | null; }>; deletePetPlaceOfPurchase(data: IUserPetPlaceOfPurchaseDeleteInput): Promise<{ statusCode: number; data: any; }>; addPetWeight(data: IUserPetWeightEntryAddInput): Promise; getPetWeight(data: { pet_guid: string; partner_ext_id?: string; }): Promise<{ statusCode: number; data: IUserPetWeightEntry[]; }>; deletePetWeight(data: Pick): Promise; addPetBmi(data: IUserPetBmiEntryAddInput): Promise; getPetBmi(data: { pet_guid: string; partner_ext_id?: string; }): Promise<{ statusCode: number; data: IUserPetBmiEntry[]; }>; deletePetBmi(data: Pick): Promise; addPetDietRecommendation(data: IUserPetDietRecommendationAddInput): Promise; getPetDietRecommendation(data: { pet_guid: string; creation_date?: string; partner_ext_id?: string; }): Promise<{ data: IUserPetDietRecommendationEntry[]; }>; deletePetDietRecommendation(data: IUserPetDietRecommendationDeleteInput): Promise; addPetTags(data: IAddPetTagsInput): Promise; deletePetTags(data: IDeletePetTagsInput): Promise; createChild(data: IUserChildCreateInput, options?: { locale?: string; }): Promise<{ data: IUserChild; }>; getChildren(data: { user_guid: string; }): Promise<{ data: IUserChild[]; }>; updateChild(data: IUserChildUpdateInput, options?: { locale?: string; }): Promise<{ data: IUserChild; }>; getUserSegments(data: { user_guid: string; }): Promise<{ data: IUserSegment[]; }>; flushUserSegmentCache(data: { user_guid: string; }): Promise<{ data: { statusCode: number; }; }>; addUserFavourites(data: IUserFavouritesAddInput): Promise<{ statusCode: number; }>; getUserFavourites(data: { user_guid: string; type?: string; source?: string; }): Promise<{ data: IUserFavourites[]; }>; deleteUserFavourites(data: IUserFavouritesDeleteInput): Promise<{ statusCode: number; }>; getFormatPassword(data?: { user_guid?: string; user_email?: string; user_username?: string; }): Promise<{ data: { password_format: string | null; alt_password_format: string | null; }; }>; getUserTags(data: { user_guid: string; }): Promise<{ data: string[]; }>; addUserTags(data: IAddUserTagsInput): Promise<{ data: { added_tags: string[]; }; }>; deleteUserTags(data: IDeleteUserTagsInput): Promise<{ data: { statusCode: number; }; }>; getUserSocialNetwork(data: { user_guid: string; }): Promise<{ data: ISocialNetwork[]; }>; addUserSocialNetwork(data: ISocialNetworkInput): Promise<{ data: { statusCode: 0; }; }>; updateUserSocialNetwork(data: ISocialNetworkInput): Promise<{ data: { statusCode: 0; }; }>; deleteUserSocialNetwork(data: ISocialNetworkDeleteInput): Promise<{ data: { statusCode: 0; }; }>; }