import type { Knex } from 'knex';
import { type CreateIndexOptions, SchemaHelper, type SortRecord, type Sql } from '../types.js';
export declare class SchemaHelperMSSQL extends SchemaHelper {
    generateIndexName(type: 'unique' | 'foreign' | 'index', collection: string, fields: string | string[]): string;
    applyLimit(rootQuery: Knex.QueryBuilder, limit: number): void;
    applyOffset(rootQuery: Knex.QueryBuilder, offset: number): void;
    formatUUID(uuid: string): string;
    getDatabaseSize(): Promise<number | null>;
    prepQueryParams(queryParams: Sql): Sql;
    addInnerSortFieldsToGroupBy(groupByFields: (string | Knex.Raw)[], sortRecords: SortRecord[], _hasRelationalSort: boolean): void;
    getColumnNameMaxLength(): number;
    getTableNameMaxLength(): number;
    createIndex(collection: string, field: string, options?: CreateIndexOptions): Promise<Knex.SchemaBuilder>;
}
