import { Service, IResult, IResultList } from '../core';
import { ISystemOption } from './ISystemOption';
export declare class SystemOptionsService extends Service<ISystemOption> {
    protected baseUrl: string;
    protected listUrl: string;
    protected propertyName: string;
    /**
     * Gets the details of given system option.
     *
     * @param {string|number|IIdentified} option System option object with mandantory fragments.
     *
     * @returns Response wrapped in [[IResult]]
     *
     * **Example**
     * ```typescript
     *
     *    const option: ISystemOption = {
     *      category: 'alarm.type.mapping',
     *      key: 'temp_to_high'
     *    };
     *
     *    (async () => {
     *      const {data, res} = await systemOptionsService.detail(option);
     *   })();
     * ```
     */
    detail(option: ISystemOption): Promise<IResult<ISystemOption>>;
    /**
     * Gets the list of system options filtered by parameters.
     *
     * @returns Response wrapped in [[IResultList]]
     *
     * @param {object} filter Object containing filters for querying system options.
     *
     * **Example**
     * ```typescript
     *
     *  const filter: object = {
     *     pageSize: 100,
     *     withTotalPages: true
     *   };
     *
     *   (async () => {
     *     const {data, res, paging} = await systemOptionsService.list(filter);
     *   })();
     * ```
     */
    list(filter?: object): Promise<IResultList<ISystemOption>>;
    protected getDetailUrl(option: ISystemOption): string;
    protected onBeforeCreate(obj: ISystemOption): any;
}
//# sourceMappingURL=SystemOptionsService.d.ts.map