UNPKG

appwrite

Version:

Appwrite is an open-source self-hosted backend server that abstracts and simplifies complex and repetitive development tasks behind a very simple REST API

75 lines (74 loc) 2.04 kB
interface Database { _db: any; } interface Collection { _coll: any; } interface Document { _doc: any; } interface TablesDB { _tdb: any; } interface Table { _tbl: any; } interface Row { _row: any; } interface Bucket { _bkt: any; } interface File { _file: any; } interface Func { _fn: any; } interface Execution { _exec: any; } interface Team { _team: any; } interface Membership { _mem: any; } interface Resolved { _res: any; } type Actionable = Document | Row | File | Team | Membership; export declare class Channel<T> { private readonly segments; _type: T; private constructor(); private next; private resolve; toString(): string; collection(this: Channel<Database>, id: string): Channel<Collection>; document(this: Channel<Collection>, id?: string): Channel<Document>; table(this: Channel<TablesDB>, id: string): Channel<Table>; row(this: Channel<Table>, id?: string): Channel<Row>; file(this: Channel<Bucket>, id?: string): Channel<File>; create(this: Channel<Actionable>): Channel<Resolved>; upsert(this: Channel<Document | Row>): Channel<Resolved>; update(this: Channel<Actionable>): Channel<Resolved>; delete(this: Channel<Actionable>): Channel<Resolved>; static database(id: string): Channel<Database>; static execution(id: string): Channel<Execution>; static tablesdb(id: string): Channel<TablesDB>; static bucket(id: string): Channel<Bucket>; static function(id: string): Channel<Func>; static team(id: string): Channel<Team>; static membership(id: string): Channel<Membership>; static account(): string; static documents(): string; static rows(): string; static files(): string; static executions(): string; static teams(): string; static memberships(): string; } export type ActionableChannel = Channel<Document> | Channel<Row> | Channel<File> | Channel<Execution> | Channel<Team> | Channel<Membership>; export type ResolvedChannel = Channel<Resolved>; export {};