import IBase from '../Base'; import IUser from '../User'; import { UserPopulate } from '../User/User'; import IMember, { MemberPopulate } from './Member'; export default interface IGroup extends IBase { name?: string; description?: string; owner?: IUser | string; parent?: IGroup | string; thumbnail?: string; members?: IMember[] | string[] | any[] | IMember | string; deletable?: boolean; } export declare class GroupPopulate implements IGroup { _id: string; name: string; description?: string; thumbnail?: string; owner?: UserPopulate | string; } export declare class UserGroupPopulate implements IGroup { _id: string; name: string; description?: string; thumbnail?: string; owner?: UserPopulate | string; members: MemberPopulate[]; } export declare class GroupRequest implements IGroup { name: string; description?: string; parent?: GroupPopulate | string; /** * @format binary */ thumbnail?: string; members?: MemberPopulate[] | string[]; deletable?: IGroup['deletable']; /** * @TJS-type object */ props?: any; /** * @TJS-type object */ extendedProps?: any; } export declare class GroupResponse implements IGroup { _id: string; name: string; description?: string; parent?: GroupPopulate | string; thumbnail?: string; owner?: UserPopulate | string; members?: MemberPopulate[]; deletable: IGroup['deletable']; props?: IBase['props']; extendedProps?: IBase['extendedProps']; createdAt?: IBase['createdAt']; createdBy?: UserPopulate | string; updatedAt?: IBase['updatedAt']; updatedBy?: UserPopulate | string; }