import type { DeferredJobsApiClient } from '../../api'; import type { Newsroom } from '../../types'; import type { CreateRequest, IncludeOptions, ListOptions, ListResponse, SearchOptions, UpdateRequest } from './types'; /** * Utility type to forbid arbitrary ad-hoc extensions of generic parameters. * @see https://stackoverflow.com/a/69666350 */ type Exactly = Concrete & Record, never>; type InferExtraFields = T extends Required> ? Pick : unknown; export type Client = ReturnType; export declare function createClient(api: DeferredJobsApiClient): { list: (options?: Exactly) => Promise>>; search: (options?: Exactly) => Promise>>; get: (id: Newsroom['uuid'] | Newsroom['id'], options?: Exactly) => Promise>; create: (payload: CreateRequest, options?: Exactly) => Promise>; update: (id: Newsroom['uuid'] | Newsroom['id'], payload: UpdateRequest, options?: Exactly) => Promise>; archive: (id: Newsroom['uuid'] | Newsroom['id'], options?: Exactly) => Promise>; unarchive: (id: Newsroom['uuid'] | Newsroom['id'], options?: Exactly) => Promise>; delete: (id: Newsroom['uuid'] | Newsroom['id']) => Promise; takeOnline: (id: Newsroom['uuid'] | Newsroom['id'], options?: Exactly) => Promise>; takeOffline: (id: Newsroom['uuid'] | Newsroom['id'], options?: Exactly) => Promise>; convertToHub: (id: Newsroom['uuid'] | Newsroom['id'], options?: Exactly) => Promise>; }; export {};