/**
 * Custom PostGIS geometry types for Drizzle ORM
 * Provides type-safe PostGIS geometry column definitions
 */
/**
 * Point - Represents a single point in 2D space
 * Usage: point('location')
 */
export declare const point: (name: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: string | {
        x: number;
        y: number;
    } | {
        type: string;
        coordinates: number[];
    };
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
/**
 * LineString - Represents a line in 2D space
 * Usage: lineString('route')
 */
export declare const lineString: (name: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: string | {
        x: number;
        y: number;
    }[];
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
/**
 * Polygon - Represents a polygon in 2D space
 * Usage: polygon('boundary')
 */
export declare const polygon: (name: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: string | {
        x: number;
        y: number;
    }[][] | {
        type: string;
        coordinates: number[][][];
    };
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
/**
 * MultiPoint - Represents multiple points
 * Usage: multiPoint('locations')
 */
export declare const multiPoint: (name: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: string | {
        x: number;
        y: number;
    }[];
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
/**
 * MultiLineString - Represents multiple line strings
 * Usage: multiLineString('routes')
 */
export declare const multiLineString: (name: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: string | {
        x: number;
        y: number;
    }[][];
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
/**
 * MultiPolygon - Represents multiple polygons
 * Usage: multiPolygon('areas')
 */
export declare const multiPolygon: (name: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: string | {
        x: number;
        y: number;
    }[][][];
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
/**
 * GeometryCollection - Represents a collection of geometries
 * Usage: geometryCollection('mixed')
 */
export declare const geometryCollection: (name: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: string;
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
/**
 * Geography - Represents geographic data (uses Earth's spheroid)
 * Usage: geography('location')
 */
export declare const geography: (name: string, geographyType?: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: string;
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
/**
 * Generic geometry type for flexibility
 * Usage: geometry('geom', 'Point', 4326)
 */
export declare const geometry: (name: string, geometryType?: string, srid?: number) => import("drizzle-orm/pg-core").PgCustomColumnBuilder<{
    name: string;
    dataType: "custom";
    columnType: "PgCustomColumn";
    data: any;
    driverParam: string;
    enumValues: undefined;
    generated: undefined;
}>;
//# sourceMappingURL=postgis.d.ts.map