import { EventsEnum } from '../enums/events.enum'; import { LanguageEnum } from '../enums/language.enum'; import { RolesEnum } from '../enums/roles.enum'; import { AdminPanelDto } from './admin-panel.dto'; import { ClientPanelDto } from './client-panel.dto'; import { FieldDto } from './field.dto'; /** * DTO for integration information. * This is a central DTO that contains all the necessary information * for a service integration, including UI configuration, supported features, * and billing details. */ export declare class InfoDto { /** * The display title of the integration. * @example "My Awesome Integration" */ title: string; /** * The URL of the integration's logo. * @example "https://example.com/logo.png" */ logo?: string; /** * A brief description of the integration and its services. * @example "This integration provides a set of tools for managing your products." */ description?: string; /** * A list of languages supported by the integration. */ supportedLanguages: LanguageEnum[]; /** * A list of events that the integration listens to. * This allows the integration to react to specific events in the system. */ listenEvents?: EventsEnum[]; /** * A list of roles that the company needs to accept for this integration to function correctly. */ requiredRoles?: RolesEnum[]; /** * Configuration for the admin panel. * This section defines the entire user interface for the integration's admin panel. */ adminPanel?: AdminPanelDto; /** * Configuration for the client panel. * This section defines the user interface for the integration's client-facing panel. */ clientPanel?: ClientPanelDto; /** * The URL for the onboarding process after the integration is installed. * This URL will be displayed in a popup or side sheet with a JWT for authentication. */ onboardingUrl?: string; setupAttributes?: FieldDto[]; }