import { IHttpClient } from "./IHttpClient"; import { IShortUserDescription } from "./IUser"; /** * Members are the {@link User | users} who have access to the {@link Project | project}. */ export declare class Member { private _data; protected projectId: string; protected httpClient: IHttpClient; /** * @param data - An object that implements member data storage. * @param projectId - Owner project ID. * @param httpClient - Http client. */ constructor(data: any, projectId: string, httpClient: IHttpClient); private internalGet; private internalPut; private internalDelete; /** * Raw member data received from the server. * * @readonly */ get data(): any; private set data(value); /** * Unique member ID. * * @readonly */ get id(): string; /** * Member role. See {@link Project#getRoles | Project.getRoles()} for more details. */ get role(): string; set role(value: string); /** * Member type. Can be `owner` or `user`. * * @readonly */ get type(): string; /** * User information. * * @property {string} userId - User ID. * @property {string} userName - User name. * @property {string} name - First name. * @property {string} lastName - Last name. * @property {string} fullName - Full name. * @property {string} initials - Initials. * @property {string} email - User email. * @property {string} avatarUrl - User avatar image URL. * @readonly */ get user(): IShortUserDescription; /** * Refresh member data. * * @async */ checkout(): Promise; /** * Update member data on the server. * * @async * @param data - Raw member data. */ update(data: any): Promise; /** * Remove a member from a project. * * @async * @returns Returns the raw data of a deleted member. */ delete(): Promise; /** * Save member data changes to the server. Call this method to update member data on the * server after any changes. * * @async */ save(): Promise; } //# sourceMappingURL=Member.d.ts.map