@awhere/api
Version:
The awesome aWhere API for JavaScript.
49 lines (48 loc) • 1.66 kB
TypeScript
import { IGroup, IMember } from '@awhere/interfaces';
import PrototypeBase from '../PrototypeBase';
import User from '../User';
import Member from './Member';
declare class Group extends PrototypeBase implements IGroup {
static generateId(): string;
private static basePath;
static fromId(id: string): Promise<Group>;
static explore(paramters?: IGroupExploreParameter): Promise<any>;
static create(data: undefined | string | IGroup): Promise<any>;
static update(id: string, data: IGroup): Promise<any>;
static delete(id: string): Promise<any>;
save(): Promise<any>;
delete(): Promise<any>;
private _name;
get name(): string;
set name(value: string);
private _owner;
get owner(): IGroup['owner'];
set owner(value: IGroup['owner']);
private _thumbnail?;
get thumbnail(): string | undefined;
set thumbnail(value: string | undefined);
private _members?;
get members(): IMember[] | undefined;
set members(value: IMember[] | undefined);
constructor(props?: IGroup);
getMemberAtIndex(index: number): IMember;
addMember(user: User, role: IMember['role']): Member;
}
export default Group;
declare enum SortWithoutKeyword {
name = "name"
}
declare enum SortWithKeyword {
relavent = "relevant"
}
declare enum SortOrder {
ascending = "ascending",
descending = "descending"
}
interface IGroupExploreParameter {
keyword?: string;
skip?: number | string;
limit?: number | string;
sortBy?: SortWithoutKeyword | SortWithKeyword | keyof typeof SortWithoutKeyword | keyof typeof SortWithKeyword;
sortOrder?: SortOrder | keyof typeof SortOrder;
}