import { Bond } from 'ketcher-core';
import { RnaPresetWizardComponentStateFieldId, RnaPresetWizardState } from './MonomerCreationWizard.types';
export declare type RnaPresetValidationStruct = {
    atoms: {
        forEach: (callback: (_value: unknown, atomId: number) => void) => void;
    };
    bonds: {
        forEach: (callback: (bond: Pick<Bond, 'begin' | 'end'>, bondId: number) => void) => void;
    };
};
export declare type RnaPresetComponentStructures = {
    base: Pick<RnaPresetWizardState['base'], 'structure'>;
    sugar: Pick<RnaPresetWizardState['sugar'], 'structure'>;
    phosphate: Pick<RnaPresetWizardState['phosphate'], 'structure'>;
};
export declare const getRnaPresetComponentKeysToSave: (componentStructures: RnaPresetComponentStructures) => RnaPresetWizardComponentStateFieldId[];
export declare const findBondBetweenRnaPresetComponents: (wizardStruct: RnaPresetValidationStruct, firstComponentAtomIds: number[], secondComponentAtomIds: number[]) => Pick<Bond, "begin" | "end"> | undefined;
export declare const isValidRnaPresetStructure: (wizardStruct: RnaPresetValidationStruct, componentStructures: RnaPresetComponentStructures) => boolean;
