smart-track
Version:
A TypeScript SDK for integrating with tracking services using the Beckn protocol. Provides adapters for package tracking with built-in error handling, retry logic, and type safety.
46 lines • 1.16 kB
TypeScript
import { BecknMetadataSchemaType } from "./payload.types";
export interface AdapterConfig {
baseURL: string;
timeout?: number;
retryAttempts?: number;
headers?: Record<string, string>;
beckn_metadata: BecknMetadataSchemaType;
}
export interface APIAdapterConfig extends AdapterConfig {
authToken?: string;
apiVersion?: string;
}
export interface GraphQLAdapterConfig extends AdapterConfig {
endpoint?: string;
}
export interface RequestOptions {
headers?: Record<string, string>;
timeout?: number;
signal?: AbortSignal;
}
export interface BatchRequest {
method: string;
endpoint: string;
data?: any;
}
export interface PaginatedResponse<T> {
data: T[];
total: number;
page: number;
limit: number;
hasNext: boolean;
hasPrev: boolean;
}
export interface GraphQLResponse<T = any> {
data?: T;
errors?: Array<{
message: string;
locations?: Array<{
line: number;
column: number;
}>;
path?: string[];
}>;
}
export type HttpMethod = "GET" | "POST" | "PUT" | "DELETE" | "PATCH";
//# sourceMappingURL=adapter.types.d.ts.map