import { BaseGPXConverter } from "./base.js";
import { TokenAST, ExtensionsType } from "../types.js";
import { BoundsType, CopyrightType, EmailType, LinkType, MetadataType, PersonType, RteType, TrksegType, TrkType, WptType, DecoderContext } from "./types.js";
export declare class WptConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    version: string;
    convert(ast: TokenAST, context: DecoderContext): WptType | undefined;
    private mapExtensionsToPoint;
}
export declare class RteConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): RteType | undefined;
}
export declare class TrkConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): TrkType | undefined;
}
export declare class TrksegConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): TrksegType | undefined;
}
export declare class LinkConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): LinkType | undefined;
}
export declare class MetadataConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): MetadataType | undefined;
}
export declare class PersonConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): PersonType | undefined;
}
export declare class EmailConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): EmailType | undefined;
}
export declare class CopyrightConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): CopyrightType | undefined;
}
export declare class BoundsConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): BoundsType | undefined;
}
export declare class ExtensionsConverter extends BaseGPXConverter {
    name: string;
    supportedTags: string[];
    convert(ast: TokenAST, context: DecoderContext): ExtensionsType | undefined;
    private flattenExtensionElement;
    private parseExtensionValue;
}
