import type { HttpMethod as HttpMethodType } from '@scalar/helpers/http/http-methods'; import { type ClientPlugin } from '@scalar/oas-utils/helpers'; import { type AvailableClients } from '@scalar/types/snippetz'; import type { WorkspaceStore } from '@scalar/workspace-store/client'; import type { SelectedSecurity } from '@scalar/workspace-store/entities/auth'; import type { HistoryEntry } from '@scalar/workspace-store/entities/history/schema'; import type { AuthMeta, ServerMeta, WorkspaceEventBus } from '@scalar/workspace-store/events'; import type { XScalarEnvironment } from '@scalar/workspace-store/schemas/extensions/document/x-scalar-environments'; import type { OpenApiDocument, ServerObject } from '@scalar/workspace-store/schemas/v3.1/strict/openapi-document'; import type { OperationObject } from '@scalar/workspace-store/schemas/v3.1/strict/operation'; import type { ClientLayout } from '../../../hooks/index.js'; import type { ExtendedScalarCookie } from '../../../v2/blocks/request-block/RequestBlock.vue.js'; import type { MergedSecuritySchemes } from '../../../v2/blocks/scalar-auth-selector-block/helpers/merge-security.js'; /** * OperationBlock * * Orchestrates the operation view by wiring together the Header, OperationBlock, * and ResponseBlock. Forwards user interactions to the workspace event bus and * passes through configuration such as auth, servers, plugins, and environment. * This component keeps the Operation page lean by centralizing event emission * and prop wiring between the blocks. * * Notable behavior: * - Uses operation['x-scalar-method'] and operation['x-scalar-path'] to provide * draft overrides for the UI when present. */ declare const _default: typeof __VLS_export; export default _default; export type OperationBlockProps = { /** Event bus */ eventBus: WorkspaceEventBus; /** Document defined security */ documentSecurity: OpenApiDocument['security']; /** Document selected security */ documentSelectedSecurity: SelectedSecurity | undefined; /** Application version */ appVersion: string; /** Workspace/document cookies */ globalCookies: ExtendedScalarCookie[]; /** Current request path */ path: string; /** Current request method */ method: HttpMethodType; /** HTTP clients */ httpClients: AvailableClients; /** The history for the operation */ history?: HistoryEntry[]; /** Client layout */ layout: ClientLayout; /** Currently selected server */ server: ServerObject | null; /** Currently selected client */ selectedClient: WorkspaceStore['workspace']['x-scalar-default-client']; /** Server list available for operation/document */ servers: ServerObject[]; /** Meta information for the server */ serverMeta: ServerMeta; /** Hides the client button on the header */ hideClientButton?: boolean; /** Client integration */ integration?: string | null; /** Openapi document url for `modal` mode to open the client app */ documentUrl?: string; /** Client source */ source?: 'gitbook' | 'api-reference'; /** Operation object */ operation: OperationObject; /** Operation selected security */ operationSelectedSecurity: SelectedSecurity | undefined; /** Currently selected example key for the current operation */ exampleKey: string; /** Meta information for the auth update */ authMeta: AuthMeta; /** Document defined security schemes */ securitySchemes: MergedSecuritySchemes; /** Client plugins */ plugins: ClientPlugin[]; /** Environment list */ environments?: string[]; /** Currently selected environment */ activeEnvironment?: string; /** For environment variables in the inputs */ environment: XScalarEnvironment; /** The proxy URL for sending requests */ proxyUrl: string; }; declare const __VLS_export: import("vue").DefineComponent & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>; //# sourceMappingURL=OperationBlock.vue.d.ts.map