import Application from '../common/Application'; import ExtensionData from './utils/ExtensionData'; export declare type Extension = { id: string; version: string; description?: string; icon?: { name: string; }; links: { authors?: { name?: string; link?: string; }[]; discuss?: string; documentation?: string; support?: string; website?: string; donate?: string; source?: string; }; extra: { 'flarum-extension': { title: string; }; }; }; export default class AdminApplication extends Application { extensionData: ExtensionData; extensionCategories: { feature: number; theme: number; language: number; }; history: { canGoBack: () => boolean; getPrevious: () => void; backUrl: () => any; back: () => void; }; /** * Settings are serialized to the admin dashboard as strings. * Additional encoding/decoding is possible, but must take * place on the client side. * * @inheritdoc */ data: Application['data'] & { extensions: Record; settings: Record; modelStatistics: Record; }; constructor(); /** * @inheritdoc */ mount(): void; getRequiredPermissions(permission: string): string[]; }