import { AnyConstructor } from '../meta';
import { SelectionAny, SelectionFamilyRecord, SelectionHeader, SelectionIndividualRecord, SelectionMultimediaRecord, SelectionNoteRecord, SelectionRepositoryRecord, SelectionSourceRecord, SelectionSubmitterRecord } from './internal';
import { SelectionRecord } from './base';
/**
 * The root of a Gedcom file.
 * Remark that the actual root is a pseudo node, and hence will store <code>null</code> for the attributes {@link tag}, {@link pointer} and {@link value}.
 */
export declare class SelectionGedcom extends SelectionAny {
    getHeader(): SelectionHeader;
    /**
     * @deprecated This method does the same thing as {@link get}; use that one instead
     */
    getRecord<R extends SelectionRecord>(tag: string | string[] | null, pointer: string | string[] | null, SelectionAdapter: AnyConstructor<R>): R;
    getSubmitterRecord(pointer?: string | string[] | null): SelectionSubmitterRecord;
    getIndividualRecord(pointer?: string | string[] | null): SelectionIndividualRecord;
    getFamilyRecord(pointer?: string | string[] | null): SelectionFamilyRecord;
    getMultimediaRecord(pointer?: string | string[] | null): SelectionMultimediaRecord;
    getNoteRecord(pointer?: string | string[] | null): SelectionNoteRecord;
    getSourceRecord(pointer?: string | string[] | null): SelectionSourceRecord;
    getRepositoryRecord(pointer?: string | string[] | null): SelectionRepositoryRecord;
}
