import type { TraveltimeJsonType } from "../travel-time";
import { Quake, Origin } from "../events/quakeml";
import { Station, Channel } from "../stations/stationxml";
import { DateTime } from "luxon";
export type MarkerType = {
    name: string;
    time: DateTime;
    markertype: string;
    description: string;
    link?: string;
};
export declare function isValidMarker(v: unknown): v is MarkerType;
/**
 * Creates Markers for all of the arrivals in ttime.arrivals, relative
 * to the given Quake.
 *
 * @param   quake quake the travel times are relative to
 * @param   ttime travel times json object as returned from the
 * IRIS traveltime web service, or the json output of TauP
 * @returns        array of Markers suitable for adding to a seismograph
 */
export declare function createMarkersForTravelTimes(quake: Quake, ttime: TraveltimeJsonType): Array<MarkerType>;
/**
 * Creates a Marker for the origin time in ttime.arrivals, for the given Quake.
 *
 * @param   quake quake the travel times are relative to
 * @returns        Marker suitable for adding to a seismograph
 */
export declare function createMarkerForOriginTime(quake: Quake): MarkerType;
export declare function createFullMarkersForQuakeAtStation(quake: Quake, station: Station): Array<MarkerType>;
export declare function createFullMarkersForQuakeAtChannel(quake: Quake, channel: Channel): Array<MarkerType>;
/**
 * Creates a Marker for the picked arrival times in quake.pickList, for the given Quake.
 *
 * @param quake quake the travel times are relative to
 * @param channel channel picks made on
 * @returns        Marker suitable for adding to a seismograph
 */
export declare function createMarkerForQuakePicks(quake: Quake, channel: Channel): Array<MarkerType>;
/**
 * Creates a Marker for the picked arrival times in quake.arrivals, for the given Quake.
 *
 * @param origin quake the travel times are relative to
 * @param channel channel picks made on
 * @returns        Marker suitable for adding to a seismograph
 */
export declare function createMarkerForPicks(origin: Origin, channel: Channel): Array<MarkerType>;
