import { IUnleashConfig, IUnleashStores } from '../types';
import { IPat } from '../types/models/pat';
import User from '../types/user';
export default class PatService {
    private config;
    private logger;
    private patStore;
    private eventStore;
    constructor({ patStore, eventStore, }: Pick<IUnleashStores, 'patStore' | 'eventStore'>, config: IUnleashConfig);
    createPat(pat: IPat, user: User): Promise<IPat>;
    getAll(user: User): Promise<IPat[]>;
    deletePat(id: number, userId: number): Promise<void>;
    validatePat({ description, expiresAt }: IPat, userId: number): Promise<void>;
    private generateSecretKey;
}
