import { Action, type ActionSchema } from './Action.js';
export type DeleteStrategy = 'soft' | 'hard';
/**
 * Enables removing an existing resource.
 * Endpoint: DELETE /[entity-collection-name]/{id}
 */
export interface DeleteActionSchema extends ActionSchema {
    kind: 'delete';
    /**
     * The strategy for deletion. Default: Soft Delete.
     *
     * @default 'soft'
     */
    strategy?: DeleteStrategy;
    /**
     * The data retention period (in days) for soft-deleted resources.
     * This defines how long the data should be kept before it is permanently deleted.
     *
     * @default 30
     */
    retentionPeriod?: number;
}
/**
 * Enables removing an existing resource.
 * Endpoint: DELETE /[entity-collection-name]/{id}
 */
export declare class DeleteAction extends Action implements DeleteActionSchema {
    accessor kind: 'delete';
    accessor strategy: DeleteStrategy;
    accessor retentionPeriod: number;
    constructor(state?: Partial<DeleteActionSchema>);
    toJSON(): DeleteActionSchema;
    static isDeleteAction(action: Action): action is DeleteAction;
    static isDeleteActionSchema(schema: ActionSchema): schema is DeleteActionSchema;
}
//# sourceMappingURL=DeleteAction.d.ts.map