UNPKG

strapi-plugin-navigation

Version:
242 lines (241 loc) 10.7 kB
import { Core } from '@strapi/strapi'; import { Context as KoaContext } from 'koa'; export type KoaContextExtension = { request: KoaContext['request'] & { body: unknown; }; }; export default function adminController(context: { strapi: Core.Strapi; }): { getAdminService(): { config({ viaSettingsPage }: import("../services/admin/types").ConfigInput): Promise<import("../dtos").NavigationPluginConfigDTO>; configContentTypes({ viaSettingsPage, }: import("../services/admin/types").ConfigInput): Promise<import("../dtos").ConfigContentTypeDTO[]>; get({ ids, locale }: import("../services/admin/types").GetInput): Promise<{ name: string; id: number; documentId: string; slug: string; locale: string; visible: boolean; items?: import("../schemas").NavigationItemDBSchema[] | undefined; }[]>; getById({ documentId, locale, populate }: import("../services/admin/types").GetByIdInput): Promise<{ name: string; id: number; documentId: string; slug: string; locale: string; visible: boolean; items?: import("../schemas").NavigationItemDBSchema[] | undefined; }>; post({ auditLog, payload }: import("../services/admin/types").PostInput): Promise<import("../dtos").NavigationDTO>; put({ auditLog, payload }: import("../services/admin/types").PutInput): Promise<{ name: string; id: number; documentId: string; slug: string; locale: string; visible: boolean; items?: import("../schemas").NavigationItemDBSchema[] | undefined; }>; delete({ auditLog, documentId }: import("../services/admin/types").DeleteInput): Promise<void>; restart(): Promise<void>; restoreConfig(): Promise<void>; updateConfig({ config: newConfig }: import("../services/admin/types").UpdateConfigInput): Promise<void>; fillFromOtherLocale({ auditLog, source, target, documentId, }: import("../services/admin/types").FillFromOtherLocaleInput): Promise<{ name: string; id: number; documentId: string; slug: string; locale: string; visible: boolean; items?: import("../schemas").NavigationItemDBSchema[] | undefined; }>; i18nNavigationContentsCopy({ source, target, }: import("../services/admin/types").I18nNavigationContentsCopyInput): Promise<void>; readNavigationItemFromLocale({ path, source, target, }: import("../services/admin/types").ReadNavigationItemFromLocaleInput): Promise<{ type: "INTERNAL" | "EXTERNAL" | "WRAPPER"; title: string; uiRouterKey: string; path?: string | null | undefined; externalPath?: string | null | undefined; related?: unknown; }>; getContentTypeItems({ query, uid, }: import("../services/admin/types").GetContentTypeItemsInput): Promise<{ documentId: string; }[]>; purgeNavigationCache(documentId: string, clearLocalisations?: boolean | undefined): Promise<{ success: boolean; }>; purgeNavigationsCache(): Promise<{ success: boolean; }>; }; getCommonService(): { getPluginStore(): Promise<{ get(params?: Partial<{ key: string; type?: string | undefined; environment?: string | undefined; name?: string | undefined; tag?: string | undefined; }> | undefined): Promise<unknown>; set(params?: Partial<{ key: string; value: unknown; type?: string | undefined; environment?: string | undefined; name?: string | undefined; tag?: string | undefined; }> | undefined): Promise<void>; delete(params?: Partial<{ key: string; type?: string | undefined; environment?: string | undefined; name?: string | undefined; tag?: string | undefined; }> | undefined): Promise<void>; }>; mapToNavigationItemDTO({ locale, master, navigationItems, parent, populate, }: import("../services/common/types").MapToNavigationItemDTOInput): Promise<import("../dtos").NavigationItemDTO[]>; setDefaultConfig(): Promise<{ additionalFields: ("audience" | { type: "string" | "boolean"; name: string; label: string; options?: string[] | undefined; required?: boolean | undefined; enabled?: boolean | undefined; multi?: false | undefined; } | { type: "media"; name: string; label: string; options?: string[] | undefined; required?: boolean | undefined; enabled?: boolean | undefined; multi?: false | undefined; } | { options: string[]; type: "select"; name: string; label: string; multi: boolean; required?: boolean | undefined; enabled?: boolean | undefined; })[]; allowedLevels: number; contentTypes: string[]; contentTypesNameFields: Record<string, string[]>; contentTypesPopulate: Record<string, string[]>; gql: { navigationItemRelated: string[]; }; pathDefaultFields: Record<string, any>; cascadeMenuAttached: boolean; preferCustomContentTypes: boolean; isCacheEnabled?: boolean | undefined; }>; getBranchName({ item }: import("../services/common/types").GetBranchNameInput): void | import("../types").NavigationActionsCategories; analyzeBranch({ masterEntity, navigationItems, parentItem, prevAction, }: import("../services/common/types").AnalyzeBranchInput): Promise<import("../types").NavigationAction[]>; removeBranch({ navigationItems, action, }: import("../services/common/types").RemoveBranchInput): Promise<import("../types").NavigationAction[]>; createBranch({ action, masterEntity, navigationItems, parentItem, }: import("../services/common/types").CreateBranchInput): Promise<import("../types").NavigationAction[]>; updateBranch({ masterEntity, navigationItems, action, parentItem, }: import("../services/common/types").UpdateBranchInput): Promise<import("../types").NavigationAction[]>; emitEvent({ entity, event, uid }: import("../services/common/types").EmitEventInput<any, any>): Promise<void>; pruneCustomFields({ removedFields }: { removedFields: ({ type: "string" | "boolean"; name: string; label: string; options?: string[] | undefined; required?: boolean | undefined; enabled?: boolean | undefined; multi?: false | undefined; } | { type: "media"; name: string; label: string; options?: string[] | undefined; required?: boolean | undefined; enabled?: boolean | undefined; multi?: false | undefined; } | { options: string[]; type: "select"; name: string; label: string; multi: boolean; required?: boolean | undefined; enabled?: boolean | undefined; })[]; }): Promise<void>; getSlug({ query }: import("../services/common/types").GetSlugInput): Promise<string>; registerLifeCycleHook({ callback, contentTypeName, hookName }: import("../services/common/types").RegisterLifeCycleHookInput): void; runLifeCycleHook({ contentTypeName, event, hookName }: import("../services/common/types").RunLifeCycleHookInput): Promise<void>; buildNestedStructure({ navigationItems, id, }: import("../services/common/types").BuildNestedStructureInput): import("../schemas").NavigationItemDBSchema[]; readLocale(): Promise<{ defaultLocale: string; restLocale: string[]; }>; }; get(): Promise<{ name: string; id: number; documentId: string; slug: string; locale: string; visible: boolean; items?: import("../schemas").NavigationItemDBSchema[] | undefined; }[]>; post(ctx: KoaContext & KoaContextExtension): Promise<import("../dtos").NavigationDTO>; put(ctx: KoaContext & KoaContextExtension): Promise<{ name: string; id: number; documentId: string; slug: string; locale: string; visible: boolean; items?: import("../schemas").NavigationItemDBSchema[] | undefined; }>; delete(ctx: KoaContext): Promise<{}>; config(): Promise<import("../dtos").NavigationPluginConfigDTO>; updateConfig(ctx: KoaContext & KoaContextExtension): Promise<{}>; restoreConfig(): Promise<{}>; settingsConfig(): Promise<import("../dtos").NavigationPluginConfigDTO>; settingsRestart(): Promise<{}>; getById(ctx: KoaContext): Promise<{ name: string; id: number; documentId: string; slug: string; locale: string; visible: boolean; items?: import("../schemas").NavigationItemDBSchema[] | undefined; }>; getContentTypeItems(ctx: KoaContext): Promise<{ documentId: string; }[]>; fillFromOtherLocale(ctx: KoaContext): Promise<{ name: string; id: number; documentId: string; slug: string; locale: string; visible: boolean; items?: import("../schemas").NavigationItemDBSchema[] | undefined; }>; readNavigationItemFromLocale(ctx: KoaContext): Promise<{ type: "INTERNAL" | "EXTERNAL" | "WRAPPER"; title: string; uiRouterKey: string; path?: string | null | undefined; externalPath?: string | null | undefined; related?: unknown; }>; getSlug(ctx: KoaContext): Promise<{ slug: string; }>; settingsLocale(): Promise<{ defaultLocale: string; restLocale: string[]; }>; };