import { SdmRecord } from '@showpad/experience-app-types';
import { AxiosInstance } from 'axios';
/**
 * Set a SDM record.
 *
 * @category Offline
 *
 * @example
 * ```typescript
 * import { Sdm } from '@showpad/experience-app-sdk'
 *
 * await Sdm.setRecord('<sdmRecord>', '<authentication>')
 * ```
 */
export declare const setRecord: <T extends import("type-fest").JsonObject = import("type-fest").JsonObject>(sdmRecord: SdmRecord, authentication: AxiosInstance) => Promise<void>;
/**
 * Create a SDM record.
 *
 * @category Offline
 *
 * @returns The SDM record
 *
 * @example
 * ```typescript
 * import { Sdm } from '@showpad/experience-app-sdk'
 *
 * await Sdm.createRecord('<sdmStoreId>', '<sdmSchemaId>', '<record>', '<authentication>')
 * ```
 */
export declare const createRecord: <T extends import("type-fest").JsonObject = import("type-fest").JsonObject>(sdmStoreId: string, sdmSchemaId: string, record: T, authentication: AxiosInstance) => Promise<SdmRecord<T>>;
/**
 * Deletes a SDM record from the store.
 *
 * @category Offline
 *
 * @example
 * ```typescript
 * import { Sdm } from '@showpad/experience-app-sdk'

 *
 * await Sdm.deleteRecord('<sdmStoreId>', '<sdmRecordId>', '<authentication>')
 * ```
 */
export declare const deleteRecord: (sdmStoreId: string, sdmRecordId: string, authentication: AxiosInstance) => Promise<void>;
