import { Client } from '../client'; import { Users } from './users'; import { UriHelper } from '../uri-helper'; import { ThBaseHandler } from '../base'; export interface ConfigurationsOptions { user?: string; base?: string; } export interface ConfigurationsQueryOptions { limit?: number; uri?: string; owner?: string; query?: Record; } export interface ConfigurationsResponse { data: Configuration[]; metadata: Record; } export interface ConfigurationResponse { data: Configuration; metadata?: { count?: number; patch?: any; }; msg?: string; } export interface BulkFetchRequestBody { sections?: string[]; owners?: string[]; } export interface BulkFetchResponse { data: Configuration[]; metadata?: Record; } export interface BulkUpdateRequestBody { configurations: Configuration[]; } export interface BulkUpdateResult { id: string; success: boolean; } export interface BulkUpdateResponse { data: BulkUpdateResult[]; metadata?: Record; } export interface Configuration { id?: string; vouchers?: Record; scan_prefixes?: Array>; voucher_actions?: Array>; settings?: Record; hooks?: Array>; themes?: Record; name?: string; client_id?: string; metadata?: Record; registers?: Record; branches?: Record; owner?: string; franchise?: Record; staff?: Record; financials?: Record | null; features?: Record | null; stock?: Record | null; transactions?: Record | null; products?: Record; customers?: Record; crm?: Record | null; datev?: Record | null; label_printer?: Record | null; delivery_note?: Record | null; togo?: Record | null; receipts?: Record | null; orders?: Record | null; carts?: Record | null; tips?: Record | null; emails?: Record | null; level?: 'client_account' | 'registers' | 'branches'; taxes?: Record | null; analytics?: Record; reservations?: Record; custom_dashboards?: Record; } declare class ConfigurationReference { data: Configuration; id?: string; metadata?: { count?: number; patch?: any; }; response: ConfigurationResponse; private readonly options; private readonly http; constructor(response: ConfigurationResponse, http: Client, options: ConfigurationsOptions); users(): Users; } export declare class Configurations extends ThBaseHandler { static baseEndpoint: string; endpoint: string; http: Client; options: ConfigurationsOptions; uriHelper: UriHelper; constructor(options: ConfigurationsOptions, http: Client); getAll(optionsOrQuery?: ConfigurationsQueryOptions | undefined): Promise; get(configurationId: string): Promise; put(configurationId: string, configuration: Configuration): Promise; patch(configurationId: string, configuration: Configuration): Promise; create(configuration: Configuration): Promise; delete(configurationId: string): Promise; bulkFetch(body: BulkFetchRequestBody): Promise; bulkUpdate(body: BulkUpdateRequestBody): Promise; } export {};