export interface ResourceObject { id: string | number type: string } export interface ErrorObject { source?: { parameter: string } detail: string meta?: { associated_resources: any[]; resource: string } title: string status: string } export type ApiResource = { data: Type links: Record meta: Record } export type ApiCollection = { data: Type[] links: Record meta: CollectionMeta } export interface FailedResponse extends Response { errors: ErrorObject[] } export interface NextPageCursor { offset?: string idLt?: string idLte?: string idGt?: string idGte?: string } export interface CollectionMeta { count: number totalCount: number next?: NextPageCursor prev?: NextPageCursor parent?: ResourceObject [attributeName: string]: unknown }