import { Resource } from "../../common";
import { APILabCategory, StoreLabCategory } from "./interfaces";
export declare class LabCategory extends Resource {
    /**
     * The tag of the category
     */
    tag: string;
    constructor(tag: string);
    /**
     * The name of the Category resource on the API server.
     */
    static get resourceName(): string;
    /**
     * The name of the service containing the Category resource.
     */
    static get serviceName(): string;
    /**
     * Convert the LabCategory into a JSON serializable object for the API server.
     */
    serializeAPI(): APILabCategory;
    /**
     * Deserialize the data from the API server.
     *
     * @param data The category data from the API server.
     */
    deserializeAPI(data: APILabCategory): void;
    /**
     * Serialize the category into a format for storing in the Redux store.
     */
    serializeRedux(): StoreLabCategory;
    /**
     * Create a category from the API server data.
     *
     * @param data Data from the api server.
     *
     * @returns The LabCategory object.
     */
    static apiFactory(data: APILabCategory): LabCategory;
    /**
     * Create a category from the Redux store data.
     *
     * @param data Data from the api server.
     *
     * @returns The LabCategory object.
     */
    static reduxFactory(data: StoreLabCategory): LabCategory;
}
