import { ListableResourceType, ListMeta, ListResponse } from '@commercelayer/sdk'; import { Writable } from 'type-fest'; import { MetricsFilters } from '../useResourceFilters/adaptSdkToMetrics'; import { Resource } from './listFetcher'; export type MetricsResources = "orders" | "returns"; type ListResponseWithoutMeta = Omit>, "meta">; type ListMetaWithCursor = Writable & { cursor: string | null; }; type ListResponseMetrics = ListResponseWithoutMeta & { meta: ListMetaWithCursor; }; type MetricsList = (resourceType: Resource, query: { search?: { limit?: number; sort?: "asc" | "desc"; sort_by?: string; fields?: string[]; cursor?: string | null; }; filter?: MetricsFilters; }) => Promise>; export interface MetricsApiClient { list: MetricsList; } export declare function useMetricsSdkProvider(): { metricsClient: MetricsApiClient; }; export declare function isValidMetricsResource(resourceType: ListableResourceType): resourceType is MetricsResources; export {};