import type { Request } from "@paloaltonetworks/postman-collection"; import { InfoObject, OperationObject, SecuritySchemeObject } from "./openapi/types"; export type { PropSidebarItemCategory, SidebarItemLink, PropSidebar, PropSidebarItem, } from "@docusaurus/plugin-content-docs-types"; export interface PluginOptions { id?: string; config: { [key: string]: APIOptions; }; } export interface APIOptions { specPath: string; outputDir: string; template?: string; sidebarOptions?: SidebarOptions; } export interface LoadedContent { loadedApi: ApiMetadata[]; } export declare type ApiMetadata = ApiPageMetadata | InfoPageMetadata; export interface ApiMetadataBase { sidebar?: string; previous?: ApiNavLink; next?: ApiNavLink; id: string; unversionedId: string; title: string; description: string; source: string; sourceDirName: string; slug: string; permalink: string; sidebarPosition?: number; frontMatter: Record; } export interface ApiPageMetadata extends ApiMetadataBase { json?: string; type: "api"; api: ApiItem; markdown?: string; } export interface ApiItem extends OperationObject { method: string; path: string; jsonRequestBodyExample: string; securitySchemes?: { [key: string]: SecuritySchemeObject; }; postman?: Request; info: InfoObject; } export interface InfoPageMetadata extends ApiMetadataBase { type: "info"; info: ApiInfo; markdown?: string; } export declare type ApiInfo = InfoObject; export interface ApiNavLink { title: string; permalink: string; } export interface SidebarOptions { groupPathsBy?: string; customProps?: { [key: string]: unknown; }; sidebarCollapsible?: boolean; sidebarCollapsed?: boolean; }