///
import _ from 'lodash/fp';
declare const sanitizePermissionFields: _.LodashPick2x1;
export interface Permission {
action: string;
actionParameters?: Record;
subject?: string | object | null;
properties?: Record;
conditions?: string[];
}
/**
* Create a new permission based on given attributes
*
* @param {object} attributes
*/
declare const create: (object: T | null | undefined) => Pick & Partial;
/**
* Add a condition to a permission
*/
declare const addCondition: import("lodash").CurriedFunction2;
/**
* Gets a property or a part of a property from a permission.
*/
declare const getProperty: (...args: any[]) => any;
export { create, sanitizePermissionFields, addCondition, getProperty };
//# sourceMappingURL=index.d.ts.map