huddle-record
Version:
Record is a Object-Relational Mapping (ORM) TypeScript plugin that makes it easy to work with data.
19 lines (18 loc) • 1.03 kB
TypeScript
import type Repository from './repository.js';
import type { ApiRequestConfig } from './interfaces/apiRequestConfig.js';
import ApiModelConfig from './interfaces/apiModelConfig.js';
import ApiResponse from './interfaces/apiResponse.js';
export default class Api<T> {
protected model: any;
protected repository: Repository<T>;
protected config: ApiModelConfig;
constructor(model: any, repository: Repository<T>, config: ApiModelConfig);
get(endpoint?: string, options?: ApiRequestConfig): Promise<ApiResponse<T>>;
post(endpoint: string, data?: any, options?: ApiRequestConfig): Promise<ApiResponse<T>>;
put(endpoint: string, data?: any, options?: ApiRequestConfig): Promise<ApiResponse<T>>;
patch(endpoint: string, data?: any, options?: ApiRequestConfig): Promise<ApiResponse<T>>;
head(endpoint: string, options?: ApiRequestConfig): Promise<ApiResponse<T>>;
delete(endpoint: string, options?: ApiRequestConfig): Promise<ApiResponse<T>>;
private makeRequest;
private returnApiOptions;
}