import type { ProgressPromise } from '@prezly/progress-promise'; import type { DeferredJobsApiClient } from '../../api'; import type { ContactTag, Contact } from '../../types'; import type { BulkDeleteResponse, BulkSelector, CreateRequest, ListOptions, ListResponse, SearchOptions, SearchResponse, UpdateRequest } from './types'; export type Client = ReturnType; export declare function createClient(api: DeferredJobsApiClient): { list: (options?: ListOptions) => Promise; search: (options?: SearchOptions) => Promise; get: (id: Contact['id']) => Promise; getMany: (ids: Contact['id'][]) => Promise; create: (payload: CreateRequest) => Promise; update: (id: Contact['id'], payload: UpdateRequest) => Promise; tag: (id: Contact['id'], tags: ContactTag.Identifier[]) => Promise; untag: (id: Contact['id'], tags: ContactTag.Identifier[]) => Promise; bulkTag: (selector: BulkSelector, tags: ContactTag.Identifier[]) => ProgressPromise; bulkUntag: (selector: BulkSelector, tags: ContactTag.Identifier[]) => ProgressPromise; delete: (id: Contact['id']) => Promise; bulkDelete: (selector: BulkSelector) => Promise; };