import { Context } from "../shared-context"; import { FindConfig } from "../common"; import { IModuleService } from "../modules-sdk"; import { AdminColumn, AdminEntityInfo } from "../http/view-configuration/admin"; import { ViewConfigurationDTO, UserPreferenceDTO, PropertyLabelDTO, FilterableViewConfigurationProps, FilterableUserPreferenceProps, PropertyLabelFilterableFields } from "./common"; import { CreateViewConfigurationDTO, UpdateViewConfigurationDTO, CreatePropertyLabelDTO, UpdatePropertyLabelDTO, UpsertPropertyLabelDTO } from "./mutations"; export interface ISettingsModuleService extends IModuleService { retrieveViewConfiguration(id: string, config?: FindConfig, sharedContext?: Context): Promise; listViewConfigurations(filters?: FilterableViewConfigurationProps, config?: FindConfig, sharedContext?: Context): Promise; listAndCountViewConfigurations(filters?: FilterableViewConfigurationProps, config?: FindConfig, sharedContext?: Context): Promise<[ViewConfigurationDTO[], number]>; createViewConfigurations(data: CreateViewConfigurationDTO[], sharedContext?: Context): Promise; createViewConfigurations(data: CreateViewConfigurationDTO, sharedContext?: Context): Promise; updateViewConfigurations(idOrSelector: string, data: UpdateViewConfigurationDTO, sharedContext?: Context): Promise; updateViewConfigurations(idOrSelector: FilterableViewConfigurationProps, data: UpdateViewConfigurationDTO, sharedContext?: Context): Promise; deleteViewConfigurations(ids: string | string[], sharedContext?: Context): Promise; retrieveUserPreference(id: string, config?: FindConfig, sharedContext?: Context): Promise; listUserPreferences(filters?: FilterableUserPreferenceProps, config?: FindConfig, sharedContext?: Context): Promise; listAndCountUserPreferences(filters?: FilterableUserPreferenceProps, config?: FindConfig, sharedContext?: Context): Promise<[UserPreferenceDTO[], number]>; createUserPreferences(data: { user_id: string; key: string; value: any; }, sharedContext?: Context): Promise; createUserPreferences(data: { user_id: string; key: string; value: any; }[], sharedContext?: Context): Promise; updateUserPreferences(data: { id: string; value?: any; }[], sharedContext?: Context): Promise; getUserPreference(userId: string, key: string, sharedContext?: Context): Promise; setUserPreference(userId: string, key: string, value: any, sharedContext?: Context): Promise; deleteUserPreferences(ids: string | string[], sharedContext?: Context): Promise; getActiveViewConfiguration(entity: string, userId: string, sharedContext?: Context): Promise; setActiveViewConfiguration(entity: string, userId: string, viewConfigurationId: string, sharedContext?: Context): Promise; getSystemDefaultViewConfiguration(entity: string, sharedContext?: Context): Promise; clearActiveViewConfiguration(entity: string, userId: string, sharedContext?: Context): Promise; retrievePropertyLabel(id: string, config?: FindConfig, sharedContext?: Context): Promise; listPropertyLabels(filters?: PropertyLabelFilterableFields, config?: FindConfig, sharedContext?: Context): Promise; listAndCountPropertyLabels(filters?: PropertyLabelFilterableFields, config?: FindConfig, sharedContext?: Context): Promise<[PropertyLabelDTO[], number]>; /** * Create a property label. */ createPropertyLabels(data: CreatePropertyLabelDTO, sharedContext?: Context): Promise; /** * Create multiple property labels. */ createPropertyLabels(data: CreatePropertyLabelDTO[], sharedContext?: Context): Promise; /** * Update property labels. * Pass data objects with 'id' field to update specific labels. */ updatePropertyLabels(data: UpdatePropertyLabelDTO[], sharedContext?: Context): Promise; /** * Update property labels by selector. */ updatePropertyLabels(options: { selector: PropertyLabelFilterableFields; data: UpdatePropertyLabelDTO; }, sharedContext?: Context): Promise; /** * Retrieve a property label by entity and property. */ retrievePropertyLabel({ entity, property }: { entity: string; property?: string; }, sharedContext?: Context): Promise; /** * Create or update a property label. * If a label already exists for the entity.property combination, it will be updated. */ upsertPropertyLabels(data: UpsertPropertyLabelDTO[], sharedContext?: Context): Promise; deletePropertyLabels(ids: string | string[], sharedContext?: Context): Promise; /** * List all discoverable entities from joiner configs. * Returns brief info about each entity. */ listDiscoverableEntities(): AdminEntityInfo[]; /** * Check if an entity exists by name. * Supports PascalCase, kebab-case, snake_case, and plural forms. */ hasEntity(name: string): boolean; /** * Generate columns for an entity. * Returns null if the entity is not found. */ generateEntityColumns(entityKey: string, sharedContext?: Context): Promise; /** * Check if entity discovery has been initialized. * Entity discovery is initialized during application start. */ isEntityDiscoveryInitialized(): boolean; } //# sourceMappingURL=service.d.ts.map