import { Contract } from 'autumndb'; import { SyncActionContext } from './sync-context'; /** * Wraps a worker context, making some operations retry if there's a retryable error * @param context * @param options * @returns */ export declare function retryableContext(context: SyncActionContext, options?: { retries: number; delay: number; }): { getContactByEmail: (email: string) => Promise; getElementBySlug: (slug: string, usePrivilegedSession?: boolean) => Promise; getElementById: (id: string) => Promise; getOauthProviderByIntegration: (integration: string) => Promise; getElementByMirrorId: (type: string, mirrorId: string, getOptions?: { usePattern?: boolean; }) => Promise; getElementByMirrorIds: (type: string, mirrorIds: string[]) => Promise; logContext: import("@balena/jellyfish-logger").LogContext; log: { warn: (message: string, data: any) => void; error: (message: string, data: any) => void; debug: (message: string, data: any) => void; info: (message: string, data: any) => void; exception: (message: string, error: any) => void; }; getLocalUsername: (username: string) => string; getRemoteUsername: (username: string) => string; upsertElement: (type: string, object: Partial[]; }>> | { id: string; type: string; patch: import("fast-json-patch").Operation[]; }, options: { actor?: string | undefined; timestamp?: Date | undefined; originator?: string | undefined; }) => Promise[]; }> | null>; query: (query: import("autumndb").JsonSchema, options?: import("autumndb").QueryOptions | undefined) => Promise[]; }>[]>; };