@oxyhq/services
Version:
Reusable OxyHQ module to handle authentication, user management, karma system, device-based session management and more 🚀
54 lines • 1.45 kB
TypeScript
/**
* Utility functions for common API patterns
*/
/**
* Build URL search parameters from an object
* @param params Object with parameter key-value pairs
* @returns URLSearchParams instance
*/
export declare function buildSearchParams(params: Record<string, any>): URLSearchParams;
/**
* Build URL with search parameters
* @param baseUrl Base URL
* @param params Object with parameter key-value pairs
* @returns Complete URL with search parameters
*/
export declare function buildUrl(baseUrl: string, params?: Record<string, any>): string;
/**
* Common pagination parameters
*/
export interface PaginationParams {
limit?: number;
offset?: number;
}
/**
* Build pagination search parameters
* @param params Pagination parameters
* @returns URLSearchParams with pagination
*/
export declare function buildPaginationParams(params: PaginationParams): URLSearchParams;
/**
* Common API response wrapper
*/
export interface ApiResponse<T = any> {
data: T;
message?: string;
success?: boolean;
}
/**
* Common error response wrapper
*/
export interface ErrorResponse {
message: string;
code: string;
status: number;
details?: any;
}
/**
* Safe JSON parsing with error handling
* @param data Data to parse
* @param fallback Fallback value if parsing fails
* @returns Parsed data or fallback
*/
export declare function safeJsonParse<T>(data: any, fallback: T): T;
//# sourceMappingURL=apiUtils.d.ts.map