import { ConfigTileSetVector } from '@basemaps/config';
import { LambdaHttpRequest, LambdaHttpResponse } from '@linzjs/lambda';
import { VectorTile } from '@mapbox/vector-tile';
import { TileXyz } from '../util/validate.js';
/**
 * Vector feature that need to check existence
 */
export interface TestFeature {
    layer: string;
    key: string;
    value: string;
}
interface TestTile extends TileXyz {
    buf?: Buffer;
    testFeatures?: TestFeature[];
}
export declare const TestTiles: TestTile[];
export declare function getTestBuffer(test: TestTile): Promise<Buffer>;
export declare function updateExpectedTile(test: TestTile, newTileData: Buffer, difference: Buffer): Promise<void>;
/**
 * Fetch vector tile and decode into mapbox VectorTile
 */
export declare const VectorTileProvider: {
    getVectorTile(tileSet: ConfigTileSetVector, test: TestTile, req: LambdaHttpRequest): Promise<VectorTile>;
};
/**
 * Health request get health TileSets and validate with test TileSets
 * - Valid response from get heath tile request
 * - Valid tile get from the request
 *
 * @throws LambdaHttpResponse for failure health test
 */
export declare function healthGet(req: LambdaHttpRequest): Promise<LambdaHttpResponse>;
export {};
