@web-ts-toolkit/access-router-client 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.d.mts +35 -33
  2. package/index.d.ts +35 -33
  3. package/package.json +2 -2
package/index.d.mts CHANGED
@@ -337,6 +337,7 @@ interface ModelPromiseMeta {
337
337
  interface LazyRequest<T> extends Promise<T> {
338
338
  exec(): Promise<T>;
339
339
  }
340
+ type ModelRequest<T> = ModelPromiseMeta & LazyRequest<T>;
340
341
  type DataResponse<T> = Response<T, T>;
341
342
  type ArrayDataResponse<T> = Response<T[], T[]>;
342
343
  type ListDataResponse<T> = ArrayDataResponse<T> & {
@@ -348,6 +349,7 @@ interface DataPromiseMeta {
348
349
  __requestConfig?: AxiosRequestConfig;
349
350
  __service?: DataService<unknown>;
350
351
  }
352
+ type DataRequest<T> = DataPromiseMeta & LazyRequest<T>;
351
353
  declare const wrapLazyPromise: <T, M = undefined>(promiseFn: () => Promise<T>, meta?: M) => M & LazyRequest<T>;
352
354
  type ResponseCallback = (res: unknown) => void;
353
355
  interface WrapOptions {
@@ -436,42 +438,42 @@ declare class ModelService<T extends Document> extends Service {
436
438
  private _handleCallbacks;
437
439
  private _defaults;
438
440
  constructor({ axios, modelName, basePath, queryPath, mutationPath, onSuccess, onFailure, throwOnError }: Props$1, defaults?: Defaults);
439
- list<TData extends Partial<T> = T>(args?: ListArgs, options?: ListOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ListModelResponse<T, TData>>;
440
- listAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: ListAdvancedArgs<TSelect>, options?: ListAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ListModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
441
- read<TData extends Partial<T> = T>(identifier: string, options?: ReadOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
442
- readAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, args?: ReadAdvancedArgs<TSelect>, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
443
- readAdvancedFilter<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: ReadAdvancedArgs<TSelect>, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
444
- new<TData extends Partial<T> = T>(axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
445
- create<TData extends Partial<T> = T>(data: object, options?: CreateOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
446
- createAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(data: object, args?: CreateAdvancedArgs<TSelect>, options?: CreateAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
447
- update<TData extends Partial<T> = T>(identifier: string, data: object, options?: UpdateOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
448
- updateAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, data: object, args?: UpdateAdvancedArgs<TSelect>, options?: UpdateAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
449
- upsert<TData extends Partial<T> = T>(data: object, options?: UpsertOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
450
- upsertAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(data: object, args?: UpsertAdvancedArgs<TSelect>, options?: UpsertAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
451
- delete(identifier: string, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<string, string>>;
452
- distinct(field: string, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<string[], string[]>>;
453
- distinctAdvanced(field: string, conditions: FilterQuery<T>, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<string[], string[]>>;
454
- count(axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<number, number>>;
441
+ list<TData extends Partial<T> = T>(args?: ListArgs, options?: ListOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ListModelResponse<T, TData>>;
442
+ listAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: ListAdvancedArgs<TSelect>, options?: ListAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ListModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
443
+ read<TData extends Partial<T> = T>(identifier: string, options?: ReadOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
444
+ readAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, args?: ReadAdvancedArgs<TSelect>, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
445
+ readAdvancedFilter<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: ReadAdvancedArgs<TSelect>, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
446
+ new<TData extends Partial<T> = T>(axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
447
+ create<TData extends Partial<T> = T>(data: object, options?: CreateOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
448
+ createAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(data: object, args?: CreateAdvancedArgs<TSelect>, options?: CreateAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
449
+ update<TData extends Partial<T> = T>(identifier: string, data: object, options?: UpdateOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
450
+ updateAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, data: object, args?: UpdateAdvancedArgs<TSelect>, options?: UpdateAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
451
+ upsert<TData extends Partial<T> = T>(data: object, options?: UpsertOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
452
+ upsertAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(data: object, args?: UpsertAdvancedArgs<TSelect>, options?: UpsertAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
453
+ delete(identifier: string, axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<string, string>>;
454
+ distinct(field: string, axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<string[], string[]>>;
455
+ distinctAdvanced(field: string, conditions: FilterQuery<T>, axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<string[], string[]>>;
456
+ count(axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<number, number>>;
455
457
  countAdvanced(filter: FilterQuery<T>, args?: {
456
458
  access?: string;
457
- }, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<number, number>>;
459
+ }, axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<number, number>>;
458
460
  id(id: string): {
459
461
  subs: <S = T>(field: keyof T) => {
460
- list: (axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ListModelResponse<S>>;
462
+ list: (axiosRequestConfig?: RequestConfig$1) => ModelRequest<ListModelResponse<S>>;
461
463
  listAdvanced: <TData extends Partial<S> | never = never, TSelect extends readonly string[] = readonly string[]>(filter?: FilterQuery<S>, args?: {
462
464
  select?: TSelect;
463
- }, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ListModelResponse<S, ResolvedSelectedShape<S, TSelect, TData>>>;
464
- read: (subId: string, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<S>>;
465
+ }, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ListModelResponse<S, ResolvedSelectedShape<S, TSelect, TData>>>;
466
+ read: (subId: string, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<S>>;
465
467
  readAdvanced: <TData extends Partial<S> | never = never, TSelect_1 extends readonly string[] = readonly string[]>(subId: string, args?: {
466
468
  select?: TSelect_1;
467
469
  populate?: unknown;
468
- }, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<S, ResolvedSelectedShape<S, TSelect_1, TData>>>;
469
- update: (subId: string, data: object, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<S>>;
470
- bulkUpdate: (data: object[], _options?: object, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ListModelResponse<S>>;
471
- create: (data: object, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<S>>;
472
- delete: (subId: string, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<Response<string, string>>;
470
+ }, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<S, ResolvedSelectedShape<S, TSelect_1, TData>>>;
471
+ update: (subId: string, data: object, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<S>>;
472
+ bulkUpdate: (data: object[], _options?: object, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ListModelResponse<S>>;
473
+ create: (data: object, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<S>>;
474
+ delete: (subId: string, axiosRequestConfig?: RequestConfig$1) => ModelRequest<Response<string, string>>;
473
475
  };
474
- fetch: (args?: ReadAdvancedArgs, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<T, Partial<T>>>;
476
+ fetch: (args?: ReadAdvancedArgs, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<T, Partial<T>>>;
475
477
  };
476
478
  private processListResult;
477
479
  }
@@ -492,11 +494,11 @@ declare class DataService<T> extends Service {
492
494
  private _handleCallbacks;
493
495
  private _defaults;
494
496
  constructor({ axios, dataName, basePath, queryPath, onSuccess, onFailure, throwOnError }: Props, defaults?: DataDefaults);
495
- list<TData extends Partial<T> = T>(args?: DataListArgs, options?: DataListOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<ListDataResponse<TData>>;
496
- listAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: DataListAdvancedArgs<TSelect>, options?: DataListAdvancedOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<ListDataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
497
- read<TData extends Partial<T> = T>(identifier: string, options?: DataReadOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<DataResponse<TData>>;
498
- readAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, args?: DataReadAdvancedArgs<TSelect>, options?: DataReadAdvancedOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<DataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
499
- readAdvancedFilter<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: DataReadAdvancedArgs<TSelect>, options?: DataReadAdvancedOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<DataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
497
+ list<TData extends Partial<T> = T>(args?: DataListArgs, options?: DataListOptions, axiosRequestConfig?: RequestConfig): DataRequest<ListDataResponse<TData>>;
498
+ listAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: DataListAdvancedArgs<TSelect>, options?: DataListAdvancedOptions, axiosRequestConfig?: RequestConfig): DataRequest<ListDataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
499
+ read<TData extends Partial<T> = T>(identifier: string, options?: DataReadOptions, axiosRequestConfig?: RequestConfig): DataRequest<DataResponse<TData>>;
500
+ readAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, args?: DataReadAdvancedArgs<TSelect>, options?: DataReadAdvancedOptions, axiosRequestConfig?: RequestConfig): DataRequest<DataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
501
+ readAdvancedFilter<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: DataReadAdvancedArgs<TSelect>, options?: DataReadAdvancedOptions, axiosRequestConfig?: RequestConfig): DataRequest<DataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
500
502
  private processListResult;
501
503
  }
502
504
 
@@ -533,7 +535,7 @@ declare function createAdapter(axiosConfig?: AxiosRequestConfig, adapterOptions?
533
535
  wrapPut: <T = unknown>(url: string, defaultAxiosRequestConfig?: AxiosRequestConfig) => (data?: unknown, options?: WrapOptions, axiosRequestConfig?: AxiosRequestConfig) => Promise<axios.AxiosResponse<T, any, {}>>;
534
536
  wrapPatch: <T = unknown>(url: string, defaultAxiosRequestConfig?: AxiosRequestConfig) => (data?: unknown, options?: WrapOptions, axiosRequestConfig?: AxiosRequestConfig) => Promise<axios.AxiosResponse<T, any, {}>>;
535
537
  wrapDelete: <T = unknown>(url: string, defaultAxiosRequestConfig?: AxiosRequestConfig) => (options?: WrapOptions, axiosRequestConfig?: AxiosRequestConfig) => Promise<axios.AxiosResponse<T, any, {}>>;
536
- group: <T extends ((ModelPromiseMeta | DataPromiseMeta) & LazyRequest<unknown>)[]>(...proms: T) => Promise<{ [K in keyof T]: T[K] extends Promise<infer U> ? U : never; }>;
538
+ group: <T extends readonly (ModelRequest<unknown> | DataRequest<unknown>)[]>(...proms: T) => Promise<{ [K in keyof T]: Awaited<T[K]>; }>;
537
539
  }>;
538
540
 
539
541
  declare function replaceItemById<T extends {
@@ -549,4 +551,4 @@ declare const _default: {
549
551
  createAdapter: typeof createAdapter;
550
552
  };
551
553
 
552
- export { type ArrayDataResponse, type ArrayModelResponse, type DataPromiseMeta, type DataResponse, DataService, type Document, type FilterQuery, type Include, type KeyValueProjection, type LazyRequest, type ListDataResponse, type ListModelResponse, Model, type ModelPromiseMeta, type ModelResponse, ModelService, type Populate, type PopulateAccess, type Projection, type ResolvedSelectedShape, type Response, type ResponseCallback, type ResultError, type RootDataQueryMeta, type RootModelQueryMeta, type RootQueryMeta, type SelectedKeys, type SelectedShape, Service, ServiceError, type Sort, type SortOrder, type SubQueryMeta, type Task, type WrapOptions, createAdapter, _default as default, removeItemById, replaceItemById, wrapLazyPromise };
554
+ export { type ArrayDataResponse, type ArrayModelResponse, type DataPromiseMeta, type DataRequest, type DataResponse, DataService, type Document, type FilterQuery, type Include, type KeyValueProjection, type LazyRequest, type ListDataResponse, type ListModelResponse, Model, type ModelPromiseMeta, type ModelRequest, type ModelResponse, ModelService, type Populate, type PopulateAccess, type Projection, type ResolvedSelectedShape, type Response, type ResponseCallback, type ResultError, type RootDataQueryMeta, type RootModelQueryMeta, type RootQueryMeta, type SelectedKeys, type SelectedShape, Service, ServiceError, type Sort, type SortOrder, type SubQueryMeta, type Task, type WrapOptions, createAdapter, _default as default, removeItemById, replaceItemById, wrapLazyPromise };
package/index.d.ts CHANGED
@@ -337,6 +337,7 @@ interface ModelPromiseMeta {
337
337
  interface LazyRequest<T> extends Promise<T> {
338
338
  exec(): Promise<T>;
339
339
  }
340
+ type ModelRequest<T> = ModelPromiseMeta & LazyRequest<T>;
340
341
  type DataResponse<T> = Response<T, T>;
341
342
  type ArrayDataResponse<T> = Response<T[], T[]>;
342
343
  type ListDataResponse<T> = ArrayDataResponse<T> & {
@@ -348,6 +349,7 @@ interface DataPromiseMeta {
348
349
  __requestConfig?: AxiosRequestConfig;
349
350
  __service?: DataService<unknown>;
350
351
  }
352
+ type DataRequest<T> = DataPromiseMeta & LazyRequest<T>;
351
353
  declare const wrapLazyPromise: <T, M = undefined>(promiseFn: () => Promise<T>, meta?: M) => M & LazyRequest<T>;
352
354
  type ResponseCallback = (res: unknown) => void;
353
355
  interface WrapOptions {
@@ -436,42 +438,42 @@ declare class ModelService<T extends Document> extends Service {
436
438
  private _handleCallbacks;
437
439
  private _defaults;
438
440
  constructor({ axios, modelName, basePath, queryPath, mutationPath, onSuccess, onFailure, throwOnError }: Props$1, defaults?: Defaults);
439
- list<TData extends Partial<T> = T>(args?: ListArgs, options?: ListOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ListModelResponse<T, TData>>;
440
- listAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: ListAdvancedArgs<TSelect>, options?: ListAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ListModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
441
- read<TData extends Partial<T> = T>(identifier: string, options?: ReadOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
442
- readAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, args?: ReadAdvancedArgs<TSelect>, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
443
- readAdvancedFilter<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: ReadAdvancedArgs<TSelect>, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
444
- new<TData extends Partial<T> = T>(axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
445
- create<TData extends Partial<T> = T>(data: object, options?: CreateOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
446
- createAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(data: object, args?: CreateAdvancedArgs<TSelect>, options?: CreateAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
447
- update<TData extends Partial<T> = T>(identifier: string, data: object, options?: UpdateOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
448
- updateAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, data: object, args?: UpdateAdvancedArgs<TSelect>, options?: UpdateAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
449
- upsert<TData extends Partial<T> = T>(data: object, options?: UpsertOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, TData>>;
450
- upsertAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(data: object, args?: UpsertAdvancedArgs<TSelect>, options?: UpsertAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
451
- delete(identifier: string, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<string, string>>;
452
- distinct(field: string, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<string[], string[]>>;
453
- distinctAdvanced(field: string, conditions: FilterQuery<T>, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<string[], string[]>>;
454
- count(axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<number, number>>;
441
+ list<TData extends Partial<T> = T>(args?: ListArgs, options?: ListOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ListModelResponse<T, TData>>;
442
+ listAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: ListAdvancedArgs<TSelect>, options?: ListAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ListModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
443
+ read<TData extends Partial<T> = T>(identifier: string, options?: ReadOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
444
+ readAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, args?: ReadAdvancedArgs<TSelect>, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
445
+ readAdvancedFilter<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: ReadAdvancedArgs<TSelect>, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
446
+ new<TData extends Partial<T> = T>(axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
447
+ create<TData extends Partial<T> = T>(data: object, options?: CreateOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
448
+ createAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(data: object, args?: CreateAdvancedArgs<TSelect>, options?: CreateAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
449
+ update<TData extends Partial<T> = T>(identifier: string, data: object, options?: UpdateOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
450
+ updateAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, data: object, args?: UpdateAdvancedArgs<TSelect>, options?: UpdateAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
451
+ upsert<TData extends Partial<T> = T>(data: object, options?: UpsertOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, TData>>;
452
+ upsertAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(data: object, args?: UpsertAdvancedArgs<TSelect>, options?: UpsertAdvancedOptions, axiosRequestConfig?: RequestConfig$1): ModelRequest<ModelResponse<T, ResolvedSelectedShape<T, TSelect, TData>>>;
453
+ delete(identifier: string, axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<string, string>>;
454
+ distinct(field: string, axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<string[], string[]>>;
455
+ distinctAdvanced(field: string, conditions: FilterQuery<T>, axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<string[], string[]>>;
456
+ count(axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<number, number>>;
455
457
  countAdvanced(filter: FilterQuery<T>, args?: {
456
458
  access?: string;
457
- }, axiosRequestConfig?: RequestConfig$1): ModelPromiseMeta & Promise<Response<number, number>>;
459
+ }, axiosRequestConfig?: RequestConfig$1): ModelRequest<Response<number, number>>;
458
460
  id(id: string): {
459
461
  subs: <S = T>(field: keyof T) => {
460
- list: (axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ListModelResponse<S>>;
462
+ list: (axiosRequestConfig?: RequestConfig$1) => ModelRequest<ListModelResponse<S>>;
461
463
  listAdvanced: <TData extends Partial<S> | never = never, TSelect extends readonly string[] = readonly string[]>(filter?: FilterQuery<S>, args?: {
462
464
  select?: TSelect;
463
- }, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ListModelResponse<S, ResolvedSelectedShape<S, TSelect, TData>>>;
464
- read: (subId: string, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<S>>;
465
+ }, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ListModelResponse<S, ResolvedSelectedShape<S, TSelect, TData>>>;
466
+ read: (subId: string, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<S>>;
465
467
  readAdvanced: <TData extends Partial<S> | never = never, TSelect_1 extends readonly string[] = readonly string[]>(subId: string, args?: {
466
468
  select?: TSelect_1;
467
469
  populate?: unknown;
468
- }, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<S, ResolvedSelectedShape<S, TSelect_1, TData>>>;
469
- update: (subId: string, data: object, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<S>>;
470
- bulkUpdate: (data: object[], _options?: object, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ListModelResponse<S>>;
471
- create: (data: object, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<S>>;
472
- delete: (subId: string, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<Response<string, string>>;
470
+ }, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<S, ResolvedSelectedShape<S, TSelect_1, TData>>>;
471
+ update: (subId: string, data: object, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<S>>;
472
+ bulkUpdate: (data: object[], _options?: object, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ListModelResponse<S>>;
473
+ create: (data: object, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<S>>;
474
+ delete: (subId: string, axiosRequestConfig?: RequestConfig$1) => ModelRequest<Response<string, string>>;
473
475
  };
474
- fetch: (args?: ReadAdvancedArgs, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1) => ModelPromiseMeta & Promise<ModelResponse<T, Partial<T>>>;
476
+ fetch: (args?: ReadAdvancedArgs, options?: ReadAdvancedOptions, axiosRequestConfig?: RequestConfig$1) => ModelRequest<ModelResponse<T, Partial<T>>>;
475
477
  };
476
478
  private processListResult;
477
479
  }
@@ -492,11 +494,11 @@ declare class DataService<T> extends Service {
492
494
  private _handleCallbacks;
493
495
  private _defaults;
494
496
  constructor({ axios, dataName, basePath, queryPath, onSuccess, onFailure, throwOnError }: Props, defaults?: DataDefaults);
495
- list<TData extends Partial<T> = T>(args?: DataListArgs, options?: DataListOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<ListDataResponse<TData>>;
496
- listAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: DataListAdvancedArgs<TSelect>, options?: DataListAdvancedOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<ListDataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
497
- read<TData extends Partial<T> = T>(identifier: string, options?: DataReadOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<DataResponse<TData>>;
498
- readAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, args?: DataReadAdvancedArgs<TSelect>, options?: DataReadAdvancedOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<DataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
499
- readAdvancedFilter<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: DataReadAdvancedArgs<TSelect>, options?: DataReadAdvancedOptions, axiosRequestConfig?: RequestConfig): DataPromiseMeta & Promise<DataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
497
+ list<TData extends Partial<T> = T>(args?: DataListArgs, options?: DataListOptions, axiosRequestConfig?: RequestConfig): DataRequest<ListDataResponse<TData>>;
498
+ listAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: DataListAdvancedArgs<TSelect>, options?: DataListAdvancedOptions, axiosRequestConfig?: RequestConfig): DataRequest<ListDataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
499
+ read<TData extends Partial<T> = T>(identifier: string, options?: DataReadOptions, axiosRequestConfig?: RequestConfig): DataRequest<DataResponse<TData>>;
500
+ readAdvanced<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(identifier: string, args?: DataReadAdvancedArgs<TSelect>, options?: DataReadAdvancedOptions, axiosRequestConfig?: RequestConfig): DataRequest<DataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
501
+ readAdvancedFilter<TData extends Partial<T> | never = never, TSelect extends Projection = Projection>(filter: FilterQuery<T>, args?: DataReadAdvancedArgs<TSelect>, options?: DataReadAdvancedOptions, axiosRequestConfig?: RequestConfig): DataRequest<DataResponse<ResolvedSelectedShape<T, TSelect, TData>>>;
500
502
  private processListResult;
501
503
  }
502
504
 
@@ -533,7 +535,7 @@ declare function createAdapter(axiosConfig?: AxiosRequestConfig, adapterOptions?
533
535
  wrapPut: <T = unknown>(url: string, defaultAxiosRequestConfig?: AxiosRequestConfig) => (data?: unknown, options?: WrapOptions, axiosRequestConfig?: AxiosRequestConfig) => Promise<axios.AxiosResponse<T, any, {}>>;
534
536
  wrapPatch: <T = unknown>(url: string, defaultAxiosRequestConfig?: AxiosRequestConfig) => (data?: unknown, options?: WrapOptions, axiosRequestConfig?: AxiosRequestConfig) => Promise<axios.AxiosResponse<T, any, {}>>;
535
537
  wrapDelete: <T = unknown>(url: string, defaultAxiosRequestConfig?: AxiosRequestConfig) => (options?: WrapOptions, axiosRequestConfig?: AxiosRequestConfig) => Promise<axios.AxiosResponse<T, any, {}>>;
536
- group: <T extends ((ModelPromiseMeta | DataPromiseMeta) & LazyRequest<unknown>)[]>(...proms: T) => Promise<{ [K in keyof T]: T[K] extends Promise<infer U> ? U : never; }>;
538
+ group: <T extends readonly (ModelRequest<unknown> | DataRequest<unknown>)[]>(...proms: T) => Promise<{ [K in keyof T]: Awaited<T[K]>; }>;
537
539
  }>;
538
540
 
539
541
  declare function replaceItemById<T extends {
@@ -549,4 +551,4 @@ declare const _default: {
549
551
  createAdapter: typeof createAdapter;
550
552
  };
551
553
 
552
- export { type ArrayDataResponse, type ArrayModelResponse, type DataPromiseMeta, type DataResponse, DataService, type Document, type FilterQuery, type Include, type KeyValueProjection, type LazyRequest, type ListDataResponse, type ListModelResponse, Model, type ModelPromiseMeta, type ModelResponse, ModelService, type Populate, type PopulateAccess, type Projection, type ResolvedSelectedShape, type Response, type ResponseCallback, type ResultError, type RootDataQueryMeta, type RootModelQueryMeta, type RootQueryMeta, type SelectedKeys, type SelectedShape, Service, ServiceError, type Sort, type SortOrder, type SubQueryMeta, type Task, type WrapOptions, createAdapter, _default as default, removeItemById, replaceItemById, wrapLazyPromise };
554
+ export { type ArrayDataResponse, type ArrayModelResponse, type DataPromiseMeta, type DataRequest, type DataResponse, DataService, type Document, type FilterQuery, type Include, type KeyValueProjection, type LazyRequest, type ListDataResponse, type ListModelResponse, Model, type ModelPromiseMeta, type ModelRequest, type ModelResponse, ModelService, type Populate, type PopulateAccess, type Projection, type ResolvedSelectedShape, type Response, type ResponseCallback, type ResultError, type RootDataQueryMeta, type RootModelQueryMeta, type RootQueryMeta, type SelectedKeys, type SelectedShape, Service, ServiceError, type Sort, type SortOrder, type SubQueryMeta, type Task, type WrapOptions, createAdapter, _default as default, removeItemById, replaceItemById, wrapLazyPromise };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@web-ts-toolkit/access-router-client",
3
3
  "description": "Client adapter for interacting with @web-ts-toolkit/access-router APIs",
4
- "version": "0.3.0",
4
+ "version": "0.4.0",
5
5
  "keywords": [
6
6
  "express",
7
7
  "mongoose",
@@ -21,7 +21,7 @@
21
21
  }
22
22
  },
23
23
  "dependencies": {
24
- "@web-ts-toolkit/utils": "0.3.0",
24
+ "@web-ts-toolkit/utils": "0.4.0",
25
25
  "axios": "^1.7.9"
26
26
  },
27
27
  "author": "Junmin Ahn",