import { IConstruct } from 'constructs';
import { Intrinsic } from './private/intrinsic';
/**
 * (experimental) An intrinsic Token that represents a reference to a construct.
 *
 * References are recorded.
 *
 * @experimental
 */
export declare abstract class Reference extends Intrinsic {
    /**
     * (experimental) Check whether this is actually a Reference.
     *
     * @experimental
     */
    static isReference(x: any): x is Reference;
    /**
     * @experimental
     */
    readonly target: IConstruct;
    /**
     * @experimental
     */
    readonly displayName: string;
    /**
     * @experimental
     */
    constructor(value: any, target: IConstruct, displayName?: string);
}
