2025-04-03 06:36:48 +00:00
|
|
|
// Export the main client
|
2025-07-28 23:20:52 +00:00
|
|
|
export { SmartRequest } from './smartrequest.js';
|
2025-04-03 06:36:48 +00:00
|
|
|
|
2025-07-27 21:23:20 +00:00
|
|
|
// Export response type from core
|
2025-07-28 22:37:36 +00:00
|
|
|
export { CoreResponse } from '../core/index.js';
|
2025-07-27 21:23:20 +00:00
|
|
|
|
2025-04-03 06:36:48 +00:00
|
|
|
// Export types
|
2025-07-29 13:19:43 +00:00
|
|
|
export type { HttpMethod, ResponseType, FormField, RetryConfig, TimeoutConfig, RateLimitConfig } from './types/common.js';
|
2025-04-03 06:36:48 +00:00
|
|
|
export {
|
|
|
|
PaginationStrategy,
|
|
|
|
type TPaginationConfig as PaginationConfig,
|
|
|
|
type OffsetPaginationConfig,
|
|
|
|
type CursorPaginationConfig,
|
|
|
|
type LinkPaginationConfig,
|
|
|
|
type CustomPaginationConfig,
|
|
|
|
type TPaginatedResponse as PaginatedResponse
|
|
|
|
} from './types/pagination.js';
|
|
|
|
|
|
|
|
// Convenience factory functions
|
2025-07-28 23:20:52 +00:00
|
|
|
import { SmartRequest } from './smartrequest.js';
|
2025-04-03 06:36:48 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Create a client pre-configured for JSON requests
|
|
|
|
*/
|
|
|
|
export function createJsonClient<T = any>() {
|
2025-07-28 23:20:52 +00:00
|
|
|
return SmartRequest.create<T>();
|
2025-04-03 06:36:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Create a client pre-configured for form data requests
|
|
|
|
*/
|
|
|
|
export function createFormClient<T = any>() {
|
2025-07-28 23:20:52 +00:00
|
|
|
return SmartRequest.create<T>();
|
2025-04-03 06:36:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Create a client pre-configured for binary data
|
|
|
|
*/
|
|
|
|
export function createBinaryClient<T = any>() {
|
2025-07-28 23:20:52 +00:00
|
|
|
return SmartRequest.create<T>().accept('binary');
|
2025-04-03 06:36:48 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Create a client pre-configured for streaming
|
|
|
|
*/
|
|
|
|
export function createStreamClient() {
|
2025-07-28 23:20:52 +00:00
|
|
|
return SmartRequest.create().accept('stream');
|
2025-04-03 06:36:48 +00:00
|
|
|
}
|