import { PropertyConverter } from '../interfaces/property-converter.interface';
import { JsonapiDocument, JsonapiCollection, JsonapiResourceRequest } from '../interfaces/jsonapi.interface';
import { TJsonaModel } from 'jsona/lib/JsonaTypes';
declare type JsonapiBody = JsonapiDocument | JsonapiCollection | TJsonaModel | Array<TJsonaModel>;
export declare class JsonapiConverter implements PropertyConverter {
    private jsona;
    deserialize(data: JsonapiBody | any): TJsonaModel | TJsonaModel[];
    serialize(data: TJsonaModel | any, includedKeys?: string[]): JsonapiResourceRequest;
    private defineTempIds;
    private addMethodsInRelations;
    private updateMethodsInculdes;
    private updateMethods;
    private deleteMethodsInIncludes;
    private renameTempIdKeys;
    private setTempId;
    private getRelationsKeys;
    private execOnElementOrArray;
}
export {};
