ngx-airbrush
Version:
Angular client for jsonapi/Graphiti backends
44 lines (43 loc) • 1.55 kB
TypeScript
import { JsonapiDocument, JsonapiResourceRequest } from './interfaces/jsonapi.interface';
import { ModelDecoratorOptions } from './decorators/option.interfaces';
export declare abstract class ResourceBase {
id: string;
modelInitialization: boolean;
modelSerialization: boolean;
private __method;
private __isRelation;
private __mdwrapper;
private readonly __wrapper;
private __resSerializer;
private readonly __serializer;
[key: string]: any;
static getModel<T extends ResourceBase>(constructor: any, data?: JsonapiDocument): T;
static getAsRelationship<T extends ResourceBase>(constructor: any, data: ResourceBase, options?: any): T;
constructor(data?: Partial<ResourceBase>);
isModelInitialization(): boolean;
readonly modelOptions: ModelDecoratorOptions;
readonly type: string;
readonly hasBeenTouched: boolean;
readonly hasDirtyAttributes: boolean;
readonly hasDirtyBelongsTos: boolean;
readonly hasDirtyHasManys: boolean;
readonly isRelation: boolean;
readonly relationMethod: "update" | "create" | "destroy" | "disassociate" | "untouched";
rollbackAttributes(): void;
assign(data: any): void;
disassociate(): void;
destroy(): void;
toJsonapi(): JsonapiResourceRequest;
toHash(): {
[attrName: string]: any;
};
sideload(): {
id: string;
type: string;
__method: "update" | "destroy" | "disassociate";
};
serialize(): {
[attrName: string]: any;
};
private translateKeys;
}