import { MetaData } from '../../templates/IndexPage/types/meta'; import { RequestMethodType, StandardUIPageType } from '../../types'; import type { ApiPayloadOptions } from '../fetcher/index'; import type { StandardUIApi } from '../types'; export type ApiKey = { url: string; params?: unknown; } | undefined; export type ApiOptions = { disableAutoFetch?: boolean; errorResponseToJSON?: (errorResponse: Response) => Promise; apiPayloadOptions?: ApiPayloadOptions; pathsConfigOnly?: StandardUIPageType[]; requestHeaders: Partial>>; }; /** * 一覧取得 & 新規作成(optional) * * NOTE: update, destroy も必要なら追加 */ export declare const useRecordsApi: (apis?: { index: StandardUIApi; create?: StandardUIApi | undefined; update?: StandardUIApi | undefined; destroy?: StandardUIApi | undefined; } | undefined, options?: ApiOptions) => { destroyRecord: (params?: (DestroyParams & { id?: string | number | undefined; }) | undefined, options?: { revalidate?: boolean | undefined; } | undefined) => Promise<{ data: undefined; error: any; }>; isDestroying: boolean; updateRecord: (params: UpdateParams & { id?: string | number | null | undefined; }) => Promise<{ data: UpdateRecord | undefined; error: any; }>; isUpdating: boolean; createRecord: (params: CreateParams) => Promise<{ data: CreateRecord | undefined; error: any; }>; isCreating: boolean; onChangeSearchParams: (params: IndexParams) => void; isLoading: boolean; data: { data: IndexRecord; meta?: MetaData | undefined; } | undefined; error: any; mutate: import("swr/_internal").KeyedMutator<{ data: IndexRecord; meta?: MetaData | undefined; }>; isValidating: boolean; }; /** * 詳細取得 & 更新(optional) */ export declare const useRecordApi: (id: string | number | undefined, apis?: { show?: StandardUIApi | undefined; create?: StandardUIApi | undefined; update?: StandardUIApi | undefined; destroy?: StandardUIApi | undefined; } | undefined, options?: ApiOptions) => { destroyRecord: (params?: (DestroyParams & { id?: string | number | undefined; }) | undefined, options?: { revalidate?: boolean | undefined; } | undefined) => Promise<{ data: undefined; error: any; }>; isDestroying: boolean; updateRecord: (params: UpdateParams & { id?: string | number | null | undefined; }) => Promise<{ data: UpdateRecord | undefined; error: any; }>; isUpdating: boolean; createRecord: (params: CreateParams) => Promise<{ data: CreateRecord | undefined; error: any; }>; isCreating: boolean; data: ShowRecord | undefined; error: any; mutate: import("swr/_internal").KeyedMutator; isValidating: boolean; isLoading: boolean; }; export declare const useIndexApi: ({ apis, options: { disableAutoFetch, apiPayloadOptions, errorResponseToJSON, requestHeaders, }, }: { apis?: { index: StandardUIApi; } | undefined; options?: ApiOptions | undefined; }) => { key: ApiKey; onChangeSearchParams: (params: IndexParams) => void; isLoading: boolean; data: { data: IndexRecord; meta?: MetaData | undefined; } | undefined; error: any; mutate: import("swr/_internal").KeyedMutator<{ data: IndexRecord; meta?: MetaData | undefined; }>; isValidating: boolean; }; export declare const useShowApi: ({ id, apis, options: { apiPayloadOptions, errorResponseToJSON, requestHeaders }, }: { id: string | number | undefined; apis?: { show?: StandardUIApi | undefined; } | undefined; options?: ApiOptions | undefined; }) => { key: ApiKey; data: ShowRecord | undefined; error: any; mutate: import("swr/_internal").KeyedMutator; isValidating: boolean; isLoading: boolean; };