import { Callback } from './Callback'; import { ExternalDocumentation } from './ExternalDocumentation'; import { Node } from './Node'; import { CookieParameter, HeaderParameter, Parameter, PathParameter, QueryParameter } from './Parameter'; import { PathItem } from './PathItem'; import { RequestBody } from './RequestBody'; import { Responses } from './Responses'; import { SecurityRequirement } from './SecurityRequirement'; import { Server } from './Server'; import { Tag } from './Tag'; import type { OperationModel, ParameterLocation } from './types'; import type { CommonMarkString, Nullable, URLString } from '@fresha/api-tools-core'; type OperationParent = PathItem; export declare class Operation extends Node implements OperationModel { #private; constructor(parent: OperationParent); get tagCount(): number; tagNames(): IterableIterator; tags(): IterableIterator; tagAt(index: number): Tag; removeTagAt(index: number): void; hasTag(name: string): boolean; addTag(name: string): void; removeTag(name: string): void; clearTags(): void; get summary(): Nullable; set summary(value: Nullable); get description(): Nullable; set description(value: Nullable); get externalDocs(): Nullable; addExternalDocs(url: URLString): ExternalDocumentation; deleteExternalDocs(): void; get operationId(): Nullable; set operationId(value: Nullable); get parameterCount(): number; parameters(): IterableIterator; parameterAt(index: number): Parameter; removeParameterAt(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; removeParameter(name: string, location?: ParameterLocation): void; clearParameters(): void; get requestBody(): Nullable; addRequestBody(): RequestBody; deleteRequestBody(): void; get responses(): Responses; get callbackCount(): number; callbackKeys(): IterableIterator; callbacks(): IterableIterator<[string, Callback]>; hasCallback(key: string): boolean; getCallback(key: string): Callback; addCallback(key: string): Callback; deleteCallback(key: string): void; clearCallbacks(): void; get deprecated(): boolean; set deprecated(value: boolean); get securityRequirementCount(): number; securityRequirements(): IterableIterator; securityRequirementAt(index: number): SecurityRequirement; addSecurityRequirement(): SecurityRequirement; deleteSecurityRequirementAt(index: number): void; clearSecurityRequirements(): void; get serverCount(): number; servers(): IterableIterator; serverAt(index: number): Server; hasServer(url: string): boolean; addServer(url: string): Server; removeServerAt(index: number): void; clearServers(): void; } export {}; //# sourceMappingURL=Operation.d.ts.map