import { NpmPackage } from '@sprucelabs/spruce-skill-utils';
import AbstractFeature, { FeatureOptions, InstallResults } from '../AbstractFeature';
import { FeatureCode } from '../features.types';
export default class PermissionFeature extends AbstractFeature {
    code: FeatureCode;
    nameReadable: string;
    description: string;
    actionsDir: string;
    _packageDependencies: NpmPackage[];
    private writer;
    constructor(options: FeatureOptions);
    handleDidExecuteAction({ featureCode, actionCode, }: {
        featureCode: string;
        actionCode: string;
    }): Promise<import("../features.types").FeatureActionResponse>;
    afterPackageInstall(): Promise<InstallResults>;
    private writeTypesFile;
    private writePlugin;
}
declare module '../../features/features.types' {
    interface FeatureMap {
        permission: PermissionFeature;
    }
    interface FeatureOptionsMap {
        permission: undefined;
    }
}
