import { BasicNode } from './BasicNode'; import { Operation } from './Operation'; import { CookieParameter, HeaderParameter, Parameter, PathParameter, QueryParameter } from './Parameter'; import { Server } from './Server'; import type { PathItemModel, PathItemOperationKey, PathItemModelParent, ParameterLocation } from './types'; import type { CommonMarkString, Nullable, ParametrisedURLString } from '@fresha/api-tools-core'; /** * @see http://spec.openapis.org/oas/v3.0.3#path-item-object */ export declare class PathItem extends BasicNode implements PathItemModel { #private; constructor(parent: PathItemModelParent); get summary(): Nullable; set summary(value: Nullable); get description(): Nullable; set description(value: Nullable); get pathUrl(): ParametrisedURLString; get operationCount(): number; operationMethods(): IterableIterator; operations(): IterableIterator<[PathItemOperationKey, Operation]>; hasOperation(method: PathItemOperationKey): boolean; getOperation(key: PathItemOperationKey): Operation | undefined; getOperationOrThrow(key: PathItemOperationKey): Operation; getOperationKey(operation: Operation): PathItemOperationKey | undefined; getOperationKeyOrThrow(operation: Operation): PathItemOperationKey; addOperation(method: PathItemOperationKey): Operation; deleteOperation(method: PathItemOperationKey): void; clearOperations(): void; get serverCount(): number; servers(): IterableIterator; serverAt(index: number): Server; addServer(url: string): Server; deleteServer(url: string): void; deleteServerAt(index: number): void; clearServers(): void; get parameterCount(): number; parameters(): IterableIterator; parameterAt(index: number): Parameter; deleteParameterAt(index: number): void; hasParameter(name: string, location?: ParameterLocation): boolean; getParameter(name: string, location?: ParameterLocation): Parameter; addParameter(name: string, location: 'path'): PathParameter; addParameter(name: string, location: 'query'): QueryParameter; addParameter(name: string, location: 'header'): HeaderParameter; addParameter(name: string, location: 'cookie'): CookieParameter; addParameterModel(model: Parameter): void; deleteParameter(name: string, location?: ParameterLocation): void; clearParameters(): void; } //# sourceMappingURL=PathItem.d.ts.map