import { IGraphQueryable } from "./graphqueryable.js"; /** * Decorator used to specify the default path for Queryable objects * * @param path */ export declare function defaultPath(path: string): {}>(target: T) => { new (...args: any[]): {}; } & T; /** * Adds the delete method to the tagged class */ export declare function deleteable(): {}>(target: T) => { new (...args: any[]): { delete(this: IGraphQueryable): Promise; }; } & T; export interface IDeleteable { /** * Delete this instance */ delete(): Promise; } /** * Adds the delete method to the tagged class */ export declare function deleteableWithETag(): {}>(target: T) => { new (...args: any[]): { delete(this: IGraphQueryable, eTag?: string): Promise; }; } & T; export interface IDeleteableWithETag { /** * Delete this instance */ delete(eTag?: string): Promise; } /** * Adds the update method to the tagged class */ export declare function updateable(): {}>(target: T) => { new (...args: any[]): { update(this: IGraphQueryable, props: any): Promise; }; } & T; export interface IUpdateable { /** * Update the properties of an event object * * @param props Set of properties to update */ update(props: T): Promise; } /** * Adds the update method to the tagged class */ export declare function updateableWithETag(): {}>(target: T) => { new (...args: any[]): { update(this: IGraphQueryable, props: any, eTag?: string): Promise; }; } & T; export interface IUpdateableWithETag { /** * Update the properties of an event object * * @param props Set of properties to update */ update(props: T, eTag?: string): Promise; } /** * Adds the add method to the tagged class */ export declare function addable(): {}>(target: T) => { new (...args: any[]): { add(this: IGraphQueryable, props: any): Promise; }; } & T; export interface IAddable { /** * Adds a new item to this collection * * @param props properties used to create the new thread */ add(props: T): Promise; } /** * Adds the getById method to a collection */ export declare function getById(factory: (...args: any[]) => R): {}>(target: T) => { new (...args: any[]): { getById(this: IGraphQueryable, id: string): R; }; } & T; export interface IGetById { /** * Adds a new item to this collection * * @param props properties used to create the new thread */ getById(id: T): R; } //# sourceMappingURL=decorators.d.ts.map