import { nothing, PropertyValues, TemplateResult } from "lit";
import { IApiKeyAuthorization, ApiDefinitions, IRequestAuthorization } from "@api-client/core/build/browser.js";
import { Authorization } from "../../authorization/ui/Authorization.js";
import { AmfParameters } from "../../../amf/lib/AmfParameters.js";
export default class AmfApiKey extends Authorization {
    /**
     * The in-memory key where the values are stored.
     */
    security?: ApiDefinitions.IApiParametrizedSecurityScheme;
    protected amfParameters: AmfParameters;
    constructor();
    protected willUpdate(cp: PropertyValues<this>): void;
    protected handleParamChange(): void;
    protected ensureConfig(): IRequestAuthorization;
    protected restoreValues(): void;
    /**
     * Updates, if applicable, query parameter value.
     *
     * This does nothing if the query parameter has not been defined for the current
     * scheme.
     *
     * @param name The name of the changed parameter
     * @param newValue A value to apply. May be empty but must be defined.
     */
    updateQueryParameter(name: string, newValue: string): void;
    /**
     * Updates, if applicable, header value.
     * This is supported for RAML custom scheme and Pass Through
     * that operates on headers model which is only an internal model.
     *
     * This does nothing if the header has not been defined for current
     * scheme.
     *
     * @param name The name of the changed header
     * @param newValue A value to apply. May be empty but must be defined.
     */
    updateHeader(name: string, newValue: string): void;
    /**
     * Updates, if applicable, cookie value.
     * This is supported in OAS' Api Key.
     *
     * This does nothing if the cookie has not been defined for current
     * scheme.
     *
     * @param name The name of the changed cookie
     * @param newValue A value to apply. May be empty but must be defined.
     */
    updateCookie(name: string, newValue: string): void;
    serialize(): IApiKeyAuthorization;
    checkValidity(): boolean;
    render(): TemplateResult;
    protected renderHeader(): TemplateResult | typeof nothing;
    protected renderEditor(): TemplateResult | typeof nothing;
    headersTemplate(): TemplateResult | typeof nothing;
    queryTemplate(): TemplateResult | typeof nothing;
    cookieTemplate(): TemplateResult | typeof nothing;
}
//# sourceMappingURL=AmfApiKey.d.ts.map