import type { IdentityDocumentType } from './ClientContract'; type UserAttributes = { address: string | null; bankAccountOwner: string; bic: string; birthdate: string | null; city: string | null; civility: string | null; clientGeneralRentalConditionSigned: boolean; companiesIds: string[]; confirmedAt: string | null; country: string | null; createdAt: string; devicesIds: string[]; email: string; esClientGeneralRentalConditionSignedAt: string | null; firstName: string | null; frClientGeneralRentalConditionSignedAt: string | null; hasAccessibleHouses: boolean; hasCompanies: boolean; hasHouses: boolean; housesIds: string[]; iban: string; identityDocumentExpirationDate: string | null; identityDocumentNumber: string | null; identityDocumentType: IdentityDocumentType | null; incompleteSignup: boolean; invitationAcceptedAt: null; invitationCreatedAt: string | null; invitationSentAt: null; isAdmin: boolean; lastName: string | null; locale: string; nationality: string | null; newsletterSubscribed: boolean; ownerGeneralRentalConditionSigned: boolean; partnershipAgency: boolean; partnershipAgencyName: string | null; phone: string | null; postalCode: string | null; ribFile: string; secondaryEmail: string | null; secondaryPhone: string | null; termsOfServiceSigned: boolean; termsOfServiceSignedAt: string | null; travelAgentGeneralRentalConditionSignedAt: string | null; updatedAt: string; }; type UserFields = { attributes: UserAttributes; id: string; type: string; }; type UserOptions = { serialized?: boolean; }; type UserCondition = Mode extends true ? 'id' : keyof UserFields; type UserSerialize = Pick> & UserAttributes; export type User = Options['serialized'] extends true ? UserSerialize : Pick>; export {};