ra-data-treeql
Version:
TreeQL data provider for react-admin
36 lines (33 loc) • 2.54 kB
TypeScript
import { DataProvider, fetchUtils, RaRecord, GetListParams, GetListResult, GetOneParams, GetOneResult, GetManyParams, GetManyResult, GetManyReferenceParams, GetManyReferenceResult, UpdateParams, UpdateResult, UpdateManyParams, UpdateManyResult, CreateParams, CreateResult, DeleteParams, DeleteResult, DeleteManyParams, DeleteManyResult, Identifier } from 'ra-core';
interface IParams {
order?: string;
page?: string;
filter?: Record<string, any>;
meta?: Record<string, any>;
id?: Identifier;
ids?: Identifier[];
[key: string]: any;
}
declare const formatParams: (params: IParams) => string;
declare class TreeQLDataProvider<ResourceType extends string = string> implements DataProvider<ResourceType> {
private httpClient;
private apiUrl;
constructor(_apiUrl: ResourceType, httpClient?: (url: any, options?: fetchUtils.Options | undefined) => Promise<{
status: number;
headers: Headers;
body: string;
json: any;
}>);
getList<RecordType extends RaRecord = any>(resource: ResourceType, params: GetListParams): Promise<GetListResult<RecordType>>;
getOne<RecordType extends RaRecord = any>(resource: ResourceType, params: GetOneParams<RecordType>): Promise<GetOneResult<RecordType>>;
getMany<RecordType extends RaRecord = any>(resource: ResourceType, params: GetManyParams): Promise<GetManyResult<RecordType>>;
getManyReference<RecordType extends RaRecord = any>(resource: ResourceType, params: GetManyReferenceParams): Promise<GetManyReferenceResult<RecordType>>;
update<RecordType extends RaRecord = any>(resource: ResourceType, params: UpdateParams<RecordType>): Promise<UpdateResult<RecordType>>;
updateMany<RecordType extends RaRecord = any>(resource: ResourceType, params: UpdateManyParams<RecordType>): Promise<UpdateManyResult<RecordType>>;
create<RecordType extends RaRecord = any>(resource: ResourceType, params: CreateParams<RecordType>): Promise<CreateResult<RecordType>>;
delete<RecordType extends RaRecord = any>(resource: ResourceType, params: DeleteParams<RecordType>): Promise<DeleteResult<RecordType>>;
deleteMany<RecordType extends RaRecord = any>(resource: ResourceType, params: DeleteManyParams<RecordType>): Promise<DeleteManyResult<RecordType>>;
protected getURL(resource: string, params: IParams): string;
}
declare const getDataProvider: (apiUrl: string, httpClient?: typeof fetchUtils.fetchJson) => TreeQLDataProvider<string>;
export { TreeQLDataProvider, getDataProvider as default, formatParams };