import type { Reader } from '../../..';
export * from './tables';
/** The output of `parseGrib2Section3` */
export type GridDefinitionSection = ReturnType<typeof parseGrib2Section3>;
/**
 * # SECTION 3 - GRID DEFINITION SECTION
 *
 * ## Links
 * - [Docs](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_sect3.shtml)
 * @param section - byte block for section 3
 * @returns - parsed grid definition
 */
export declare function parseGrib2Section3(section: Reader): {
    /** Number of GRIB section */
    sectionNumber: number;
    /** Name of Grib section */
    sectionName: "Grid Definition Section";
    /** Length of GRIB section */
    length: number;
    /** Source of grid definition */
    definitionSource: number;
    /** Number of data points */
    numberOfPoints: number;
    /** Number of octets for optional list of numbers defining number of points */
    numberOfOctets: number;
    /** Interpetation of list of numbers defining number of points [Table 3.11](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table3-11.shtml) */
    interpretation: number;
    /** Grid definition template number [Table 3.1](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table3-1.shtml) */
    gridDefinitionTemplate: {
        code: number;
        description: string;
    };
    /** Grid definition values */
    values: {
        shape: {
            code: number;
            value: string;
        };
        radiusScaleFactor: number;
        radiusScaleValue: number;
        majorAxisScaleFactor: number;
        majorAxisScaleValue: number;
        minorAxisScaleFactor: number;
        minorAxisScaleValue: number;
        nx: number;
        ny: number;
        basicAngle: number;
        subdivisions: number;
        lat1: number;
        lon1: number;
        resolution: {
            code: number;
            value: {
                iDirectionIncrements: {
                    code: number;
                    value: string;
                };
                jDirectionIncrements: {
                    code: number;
                    value: string;
                };
                vectorComponentResolution: {
                    code: number;
                    value: string;
                };
            };
        };
        lat2: number;
        lon2: number;
        dx: number;
        dy: number;
        scanMode: {
            code: number;
            value: {
                xDir: {
                    code: number;
                    value: string;
                };
                yDir: {
                    code: number;
                    value: string;
                };
                adjacentDir: {
                    code: number;
                    value: string;
                };
                rowDir: {
                    code: number;
                    value: string;
                };
                rowOffset: {
                    code: number;
                    value: string;
                };
                pointOffsetX: {
                    code: number;
                    value: string;
                };
                pointOffsetY: {
                    code: number;
                    value: string;
                };
                rowGridRule: {
                    code: number;
                    value: string;
                };
            };
        };
        gridUnits: string;
        buildGrid: (transformer?: import("../../../..").Transformer) => import("s2json-spec").VectorPoint<Record<string, number>>[];
    };
};
//# sourceMappingURL=index.d.ts.map