import { EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
import { RealsoftSort } from './sort';
import * as i0 from "@angular/core";
/**
* Directive for automatically sorting numeric columns in a table.
* This directive extends the base RealsoftSort functionality
* and automatically handles numeric sorting.
*
* Usage:
*
*/
export declare class RealsoftNumericSort extends RealsoftSort implements OnInit, OnChanges {
/**
* The data array to be sorted.
* When this changes or sort changes, the data will be automatically sorted.
*/
data: any[];
/**
* Event emitted with the sorted data.
* This fires whenever the sort changes or the input data changes.
*/
sortedData: EventEmitter;
/**
* Whether to parse strings to numbers before sorting.
* Useful when numeric data is stored as strings.
*/
parseStrings: boolean;
/**
* How to handle null/undefined values.
* 'first' - null values appear first
* 'last' - null values appear last
*/
nullHandling: 'first' | 'last';
/**
* Whether to sort immediately when data is provided.
* If false, data will only be sorted when user clicks a column header.
*/
sortOnInit: boolean;
ngOnInit(): void;
ngOnChanges(changes?: SimpleChanges): void;
/**
* Performs the actual sorting and emits the result
*/
private performSort;
/**
* Compares two numeric values based on sort direction
*/
private compareNumeric;
/**
* Helper to get nested object properties using dot notation
*/
private getNestedProperty;
/**
* Public method to trigger a re-sort with current settings
*/
resort(): void;
/**
* Public method to clear sorting and return original data
*/
clearSort(): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}