import { SharedContracts } from '../../contracts';
export declare namespace LanguageVariantElements {
    interface ILanguageVariantElementBase {
        element: SharedContracts.IReferenceObjectContract;
        value: any;
    }
    interface IRichTextComponent {
        id: string;
        type: SharedContracts.IReferenceObjectContract;
        elements: ILanguageVariantElementBase[];
    }
    interface IAssetInVariantElement extends ILanguageVariantElementBase {
        value: SharedContracts.IReferenceObjectContract[] | null;
    }
    interface ICustomElementInVariantElement extends ILanguageVariantElementBase {
        value: string | null;
        searchable_value?: string;
    }
    interface IDateTimeInVariantElement extends ILanguageVariantElementBase {
        value: string | null;
        display_timezone: string | null;
    }
    interface ILinkedItemsInVariantElement extends ILanguageVariantElementBase {
        value: SharedContracts.IReferenceObjectContract[] | null;
    }
    interface IMultipleChoiceInVariantElement extends ILanguageVariantElementBase {
        value: SharedContracts.IReferenceObjectContract[] | null;
    }
    interface INumberInVariantElement extends ILanguageVariantElementBase {
        value: number | null;
    }
    interface IRichtextInVariantElement extends ILanguageVariantElementBase {
        value: string | null;
        components?: IRichTextComponent[];
    }
    interface ITaxonomyInVariantElement extends ILanguageVariantElementBase {
        value: SharedContracts.IReferenceObjectContract[] | null;
    }
    interface ITextInVariantElement extends ILanguageVariantElementBase {
        value: string | null;
    }
    interface IUrlSlugInVariantElement extends ILanguageVariantElementBase {
        value: string | null;
        mode: 'autogenerated' | 'custom';
    }
}
export declare class LanguageVariantElementsBuilder {
    assetElement(element: LanguageVariantElements.IAssetInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    customElement(element: LanguageVariantElements.ICustomElementInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    dateTimeElement(element: LanguageVariantElements.IDateTimeInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    linkedItemsElement(element: LanguageVariantElements.ILinkedItemsInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    multipleChoiceElement(element: LanguageVariantElements.IMultipleChoiceInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    numberElement(element: LanguageVariantElements.INumberInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    richTextElement(element: LanguageVariantElements.IRichtextInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    taxonomyElement(element: LanguageVariantElements.ITaxonomyInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    textElement(element: LanguageVariantElements.ITextInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    urlSlugElement(element: LanguageVariantElements.IUrlSlugInVariantElement): LanguageVariantElements.ILanguageVariantElementBase;
    any(element: any): LanguageVariantElements.ILanguageVariantElementBase;
}
export declare const languageVariantElementsBuilder: LanguageVariantElementsBuilder;
