import { AppLocalizationService } from '@laserfiche/lf-ui-components/internal-shared';
import { FieldType } from '@laserfiche/lf-ui-components/shared';
import { LfToken, LfTokenService } from '../lf-token-picker/lf-token.service';
import * as i0 from "@angular/core";
/** @internal */
export declare class LfFieldTokenService implements LfTokenService {
    private localizationService;
    private readonly defaultStringTokens;
    private readonly defaultNumberTokens;
    private readonly DATE;
    private readonly TIME;
    private readonly DATE_TIME;
    private readonly SESSION_COUNT;
    private readonly REPOSITORY_COUNT;
    private readonly USER_NAME;
    private readonly ENTRY_NAME;
    private readonly PARENT_NAME;
    private readonly ENTRY_ID;
    private readonly PARENT_ID;
    private readonly PARENT_FIELD;
    private readonly FILE_NAME;
    private readonly FILE_EXTENSION;
    private readonly FILE_MODIFIED;
    private readonly defaultDateTokens;
    private readonly defaultDateTimeTokens;
    private readonly defaultTimeTokens;
    private readonly fieldTokenTexts;
    constructor(localizationService: AppLocalizationService);
    getTokensAsync(lfFieldTokenData: LfFieldTokenData): Promise<LfToken[]>;
    private convertTokenIdsToTokens;
    private getTokenFriendlyName;
    getTokenText(token: LfFieldTokenId): string | undefined;
    getTokensForFieldType(fieldType: FieldType, isImport: boolean): LfFieldTokenId[];
    containsTokenForFieldType(fieldValue: string, fieldType: FieldType, isImport: boolean): boolean;
    private fieldIsToken;
    private fieldIsOnlyToken;
    static ɵfac: i0.ɵɵFactoryDeclaration<LfFieldTokenService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<LfFieldTokenService>;
}
export declare enum LfFieldTokenId {
    DATE = 0,
    TIME = 1,
    DATETIME = 2,
    SESSION_COUNT = 3,
    REPOSITORY_COUNT = 4,
    USER_NAME = 5,
    ENTRY_NAME = 6,
    PARENT_NAME = 7,
    ENTRY_ID = 8,
    PARENT_ID = 9,
    PARENT_FIELD = 10,
    FILE_NAME = 11,
    FILE_EXTENSION = 12,
    FILE_MODIFIED = 13
}
export interface LfFieldTokenData {
    fieldType: FieldType;
}
