import type { FileStats, File, NxtError } from '../../common/index.ts';
export interface FileDomainRecords {
    ":file": FileDomainFileRecord;
    ":file.replicate": FileReplicateRecord;
    ":file.restrictions": FileRestrictionsRecord;
    ":file.stats?": FileDomainStatsRecord;
    ":file.methods?": FileDomainMethodsRecord;
}
export interface FileReplicateRecord {
    replicas: string[];
    error: NxtError | null;
}
export interface FileReplica {
    name: string;
    status: "ok" | "error";
    error: NxtError | null;
}
export interface FileRestrictionsRecord {
    [restrictionId: string]: {
        asset: string;
        date: string;
        user: string;
        text: string;
        start: number;
        end: number;
    };
}
export type FileDomainFileRecord = File;
export type FileDomainStatsRecord = FileStats;
export interface FileDomainMethodsRecord {
    stop?: {
        rpcId: string;
        rpcData: unknown;
    };
}
