import { AxiosResponse } from 'axios';
import { Config } from './config';
import Request from './request';
export interface Enforcer {
    owner: string;
    name: string;
    createdTime: string;
    updatedTime?: string;
    displayName: string;
    description: string;
    model: string;
    adapter: string;
    isEnabled?: boolean;
}
export declare class EnforcerSDK {
    private config;
    private readonly request;
    constructor(config: Config, request: Request);
    getEnforcers(): Promise<AxiosResponse<{
        data: Enforcer[];
    }, any>>;
    getEnforcer(id: string): Promise<AxiosResponse<{
        data: Enforcer;
    }, any>>;
    modifyEnforcer(method: string, enforcer: Enforcer): Promise<AxiosResponse<Record<string, unknown>, any>>;
    addEnforcer(enforcer: Enforcer): Promise<AxiosResponse<Record<string, unknown>, any>>;
    updateEnforcer(enforcer: Enforcer): Promise<AxiosResponse<Record<string, unknown>, any>>;
    deleteEnforcer(enforcer: Enforcer): Promise<AxiosResponse<Record<string, unknown>, any>>;
}
