import { Association, HasManyGetAssociationsMixin } from 'sequelize';
import { ModelRecord } from '../htmlModel/index';
import { BaseModel } from '../../core/BaseModel';
import { DynamicCodePayment } from './DynamicCodePayment';
export declare const DYNAMIC_CODE_TYPE: {
    URL: number;
    MODEL: number;
};
export declare const DYNAMIC_CODE_STATUS: {
    LOCK: number;
    UN_LOCK: number;
    BLOCK: number;
};
export interface DynamicCodeToMeta {
    uid: number;
    id: number;
    code: {
        type: number;
        to: any;
    };
}
export declare type DynamicCodeProductMeta = DynamicCodePayment | DynamicCodeToMeta;
export declare class DynamicCode extends BaseModel {
    static associations: {
        models: Association<DynamicCode, ModelRecord>;
    };
    id: number;
    name: string;
    uid: number;
    description: string;
    thumbUrl: string;
    url: string;
    to: {
        type: number;
        [key: string]: any;
    };
    status: number;
    createdAt: Date;
    updatedAt: Date;
    invalidAt: Date;
    deleted: boolean;
    getModels: HasManyGetAssociationsMixin<ModelRecord>;
    toJSON(): object;
}
