import { BaseResource } from '../types/Resource'; import { dbClient } from '../util/dbClient'; import { createEventHelper } from '../helpers/eventHelper'; import * as yup from 'yup'; interface Config { db: ReturnType; eventbridge: AWS.EventBridge; validationSchema: yup.ObjectSchema; hiddenKeys: Array; ownerKeys: Array; } export declare class Resource { protected config: Config; protected eventHelper: ReturnType; protected initial: Data; protected current: Data; constructor(params: Partial & { config: Pick, 'db' | 'eventbridge'> & Partial, 'hiddenKeys' | 'ownerKeys'>> & { validationSchema: yup.ObjectSchema; }; }); get data(): Data; set(data: Partial): void; get init(): Data; get owner(): Pick>; get public(): Pick>; get pk(): Pick; save: (isNew?: boolean) => Promise; create: () => Promise; validate: () => Promise; delete: () => Promise; } export {};