import type { AnyArray } from '../../Contracts';
import { Select } from '../../Filters';
import type Enum from '../Enum';
declare const EnumFilter_base: (abstract new (...args: import("../../Contracts").Args) => {
    field: import("..").Field;
    apply(request: import("../..").AvonRequest, queryBuilder: import("../../Repositories").Repository<import("../../Contracts").Model>, value: import("../../Contracts").AnyValue): Promise<void>;
    filterableAttribute(request: import("../..").AvonRequest): string;
    isValidNullValue(value: import("../../Contracts").AnyValue): boolean;
    isNullable(): boolean;
    applyNullFilter(request: import("../..").AvonRequest, queryBuilder: import("../../Repositories").Repository<import("../../Contracts").Model>): import("../../Repositories").Repository<import("../../Contracts").Model>;
    parseValue(value: import("../../Contracts").AnyValue): any;
    key(): string;
    helpText?: string;
    help(helpText: string): any;
    serializeParameters(request: import("../..").AvonRequest): import("openapi-types").OpenAPIV3.ParameterObject[];
    schema(request: import("../..").AvonRequest): import("../../Contracts").OpenApiSchema;
    canSee(callback: import("../../Contracts").SeeCallback): any;
    seeCallback: import("../../Contracts").SeeCallback;
    authorizedToSee(request: import("../..").AvonRequest): boolean;
    nullable(nullable?: boolean, validator?: import("../../Contracts").NullableCallback | undefined): any;
    acceptsNullValues: boolean;
    nullValidator: import("../../Contracts").NullableCallback;
    nullValues(nullValidator: import("../../Contracts").NullableCallback): any;
    valueIsConsideredNull(value: import("../../Contracts").AnyValue): boolean;
}) & typeof Select;
export default class EnumFilter extends EnumFilter_base {
    field: Enum;
    constructor(field: Enum);
    /**
     * Get the possible filtering values.
     */
    options(): AnyArray;
}
export {};
