import { Brand } from "../../../model/base/SDKBrand";
import { DTOriginalTokenType } from "../../../model/enums/SDKTokenType";
import { AnyToken } from "../../../model/tokens/SDKTokenValue";
import { DTParsedNode } from "./SDKDTJSONLoader";
import { DTPluginToSupernovaMapPack } from "./SDKDTMapLoader";
import { DTTokenReferenceResolver } from "./SDKDTTokenReferenceResolver";
export type DTProcessedTokenNode<T extends AnyToken = AnyToken> = {
    token: T;
    originalType: DTOriginalTokenType;
    path: Array<string>;
    key: string;
};
/** Utility to DS Tokens plugin JSON to Supernova entities */
export declare class DTJSONConverter {
    versionId: string;
    mapping: DTPluginToSupernovaMapPack;
    referenceResolver: DTTokenReferenceResolver;
    constructor(versionId: string, mapping: DTPluginToSupernovaMapPack);
    convertNodesToTokens(nodes: Array<DTParsedNode>, brand: Brand): Array<DTProcessedTokenNode>;
    private restoreInitialTokenOrder;
    private remapRootNodeKey;
    private remapRootNodeKeys;
    private convertNodesToTokensForSupportedNodeTypes;
    private convertAtomicNode;
    private convertColorAtomicNode;
    private convertDimensionAtomicNode;
    private convertStringAtomicNode;
    private convertTextCaseAtomicNode;
    private convertTextDecorationAtomicNode;
    private convertVisibilityAtomicNode;
    private convertShadowAtomicNode;
    private convertBorderAtomicNode;
    private convertGradientAtomicNode;
    private convertTypographyAtomicNode;
    private convertReferencedNode;
    private convertPureReferencedNode;
    private convertComplexReferenceNode;
    private convertDTTypeToSupernovaType;
}
