import type { Response, Security } from '../type';
import type { Method } from '../method';
export interface Controller {
    /**
     * Allowed Content-Types to pass
     * data according the definition.
     *
     * i.e. ['application/json']
     */
    consumes: string[];
    /**
     * Is controller hidden, and should
     * not be used/displayed in some scenarios.
     */
    hidden: boolean;
    /**
     * File Location of the Controller.
     */
    location: string;
    /**
     * Array of found method ( class functions )
     * for a specific controller (class)
     */
    methods: Method[];
    name: string;
    /**
     * The relative URL Path, i.e /users
     */
    path: string;
    /**
     * Possible Content-Types to receive
     * data according the definition.
     *
     * i.e. ['application/json']
     */
    produces: string[];
    responses: Response[];
    /**
     * Tags can be used to group controllers
     * by a name together.
     *
     * i.e. ['auth']
     */
    tags: string[];
    security?: Security[];
}
//# sourceMappingURL=type.d.ts.map