import { Observable } from 'rxjs'; import { ChildService } from './ChildService'; import { ObservableUploadTask, UploadFileOptions } from './ObservableUploadTask'; export function cleanData (data: object): object; export function cleanUpdates (data: object): object; export interface CRUDServiceItem { [key: string]: any; } export interface CRUDServiceItemInput { [key: string]: any; } export interface CRUDServiceItemUpdates { [key: string]: any; } export interface GetOptions { accessToken?: string; } export interface FindOptions { accessToken?: string; } export interface PaginatedItems { items: T[]; total?: number; limit?: number; skip?: number; } export interface CreateOptions { accessToken?: string; } export interface UpdateOptions { accessToken?: string; } export interface RemoveOptions { accessToken?: string; } export interface WatchOptions { emitChangedItem?: boolean; } export interface WatchablePromise extends Promise { watch(opts?: WatchOptions): Observable } export declare class CRUDChildService extends ChildService { uploadFile(file: string, opts?: UploadFileOptions): ObservableUploadTask; uploadPic(id: string, file: string, opts?: UploadFileOptions): ObservableUploadTask; get(id: string, opts?: GetOptions): WatchablePromise; find(query: object, opts?: FindOptions): WatchablePromise, T[]>; findOne(query: object, opts?: FindOptions): Promise; count(query: object, opts?: FindOptions): Promise; create(data: TI | TI[], opts?: CreateOptions): Promise; update(query: string | object, data: TU, opts?: UpdateOptions): Promise; updateOne(query: object, data: TU, opts?: UpdateOptions): Promise; remove(query: string | object, opts?: RemoveOptions): Promise; removeOne(query: object, opts?: UpdateOptions): Promise; }