import { IGraphCollection, 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: any): 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; } /** * Adds the getByName method to a collection */ export declare function getByName(factory: (...args: any[]) => R): {}>(target: T) => { new (...args: any[]): { getByName(this: IGraphQueryable, name: string): R; }; } & T; export interface IGetByName { /** * Adds a new item to this collection * * @param props properties used to create the new thread */ getByName(name: T): R; } export declare function hasDelta(): {}>(target: T) => { new (...args: any[]): { delta(this: IGraphQueryable, properties?: IDeltaProps): IGraphCollection | T[]>; }; } & T; export interface IHasDelta { /** * Gets the delta of the queryable * */ delta(properties?: T): IGraphCollection>; } export interface IDeltaItems { next: IGraphCollection; delta: IGraphCollection; values: R[]; } export interface IDeltaProps { deltatoken?: string; token?: string; maxPageSize?: number; } //# sourceMappingURL=decorators.d.ts.map