import * as VScript from "vscript";
import * as _NetworkInterfaces from "./NetworkInterfaces";
import * as _ClusterSources from "./ClusterSources";
export declare const lift: {
    readonly ClusterProcessorsLocalRuntime: (kwl: string | null, socket: VScript.VSocket) => ClusterProcessorsLocalRuntime | null;
    readonly ClusterProcessorsPPMSRuntime: (kwl: string | null, socket: VScript.VSocket) => ClusterProcessorsPPMSRuntime | null;
    readonly ClusterProcessorsMetadataRuntime: (kwl: string | null, socket: VScript.VSocket) => ClusterProcessorsMetadataRuntime | null;
    readonly ClusterProcessorsMipMapsRuntime: (kwl: string | null, socket: VScript.VSocket) => ClusterProcessorsMipMapsRuntime | null;
    readonly ClusterProcessorMipMapsInputRuntime: (kwl: string | null, socket: VScript.VSocket) => ClusterProcessorMipMapsInputRuntime | null;
    readonly ClusterProcessorMipMapsDualOutputRuntime: (kwl: string | null, socket: VScript.VSocket) => ClusterProcessorMipMapsDualOutputRuntime | null;
    readonly ClusterProcessorMipMapsDualOutputRuntimeSource: (kwl: string | null, socket: VScript.VSocket) => ClusterProcessorMipMapsDualOutputRuntimeSource | null;
    readonly ClusterProcessorsLocalConfiguration: (kwl: string | null, socket: VScript.VSocket) => ClusterProcessorsLocalConfiguration | null;
    readonly ClusterMultiviewerLocalConfiguration: (kwl: string | null, socket: VScript.VSocket) => ClusterMultiviewerLocalConfiguration | null;
    readonly ClusterMultiviewerHeadReference: (kwl: string | null, socket: VScript.VSocket) => ClusterMultiviewerHeadReference | null;
};
export declare const lower: {
    readonly ClusterProcessorsLocalRuntime: (ref: ClusterProcessorsLocalRuntime | null) => string | null;
    readonly ClusterProcessorsPPMSRuntime: (ref: ClusterProcessorsPPMSRuntime | null) => string | null;
    readonly ClusterProcessorsMetadataRuntime: (ref: ClusterProcessorsMetadataRuntime | null) => string | null;
    readonly ClusterProcessorsMipMapsRuntime: (ref: ClusterProcessorsMipMapsRuntime | null) => string | null;
    readonly ClusterProcessorMipMapsInputRuntime: (ref: ClusterProcessorMipMapsInputRuntime | null) => string | null;
    readonly ClusterProcessorMipMapsDualOutputRuntime: (ref: ClusterProcessorMipMapsDualOutputRuntime | null) => string | null;
    readonly ClusterProcessorMipMapsDualOutputRuntimeSource: (ref: ClusterProcessorMipMapsDualOutputRuntimeSource | null) => string | null;
    readonly ClusterProcessorsLocalConfiguration: (ref: ClusterProcessorsLocalConfiguration | null) => string | null;
    readonly ClusterMultiviewerLocalConfiguration: (ref: ClusterMultiviewerLocalConfiguration | null) => string | null;
    readonly ClusterMultiviewerHeadReference: (ref: ClusterMultiviewerHeadReference | null) => string | null;
};
export declare type VideoStandard = "HD1080p50" | "HD1080p59_94" | "HD1080p60" | "HD2160p50" | "HD2160p59_94" | "HD2160p60";
export declare class ClusterMultiviewerHeadReference {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get head_id(): VScript.rwKeyword<number, number, ClusterMultiviewerHeadReference>;
}
export declare class ClusterMultiviewerHeadReferenceAsNamedTableRow extends ClusterMultiviewerHeadReference {
    private readonly raw_row;
    readonly enclosing_table: VScript.StronglyTypedNamedTable<ClusterMultiviewerHeadReference>;
    readonly index: number;
    constructor(raw_row: VScript.NamedTableRow, enclosing_table: VScript.StronglyTypedNamedTable<ClusterMultiviewerHeadReference>);
    rename(name: string, opts?: VScript.CommonWriteOptions): Promise<void>;
    delete(opts?: VScript.CommonWriteOptions): Promise<void>;
}
export declare class ClusterMultiviewerLocalConfiguration {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get heads(): VScript.StronglyTypedNamedTable<ClusterMultiviewerHeadReference, VScript.NamedTableRowView<ClusterMultiviewerHeadReference>>;
}
export declare class ClusterProcessorsLocalConfiguration {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get multiviewer(): ClusterMultiviewerLocalConfiguration;
}
export declare class ClusterProcessorMipMapsDualOutputRuntimeSource {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get full_size(): VScript.rKeyword<boolean, boolean, ClusterProcessorMipMapsDualOutputRuntimeSource>;
    get source(): VScript.rKeyword<string | null, _ClusterSources.ClusterVideoSourceRuntime | null, ClusterProcessorMipMapsDualOutputRuntimeSource>;
    get source_sdp(): VScript.rKeyword<string, string, ClusterProcessorMipMapsDualOutputRuntimeSource>;
    get input_primary_port(): VScript.rKeyword<_ClusterSources.Ports, _ClusterSources.Ports, ClusterProcessorMipMapsDualOutputRuntimeSource>;
    get input_secondary_port(): VScript.rKeyword<_ClusterSources.Ports, _ClusterSources.Ports, ClusterProcessorMipMapsDualOutputRuntimeSource>;
    get output_primary_port(): VScript.rKeyword<_ClusterSources.Ports, _ClusterSources.Ports, ClusterProcessorMipMapsDualOutputRuntimeSource>;
    get output_secondary_port(): VScript.rKeyword<_ClusterSources.Ports, _ClusterSources.Ports, ClusterProcessorMipMapsDualOutputRuntimeSource>;
    /**
      IP address of the mipmap RTP stream
    */
    get output_src_ip_address(): VScript.rKeyword<string, string, ClusterProcessorMipMapsDualOutputRuntimeSource>;
    /**
      IP address of the secondary mipmap RTP stream
    */
    get output_secondary_src_ip_address(): VScript.rKeyword<string, string, ClusterProcessorMipMapsDualOutputRuntimeSource>;
}
export declare class ClusterProcessorMipMapsDualOutputRuntimeSourceAsArrayRow<ParentType extends VScript.StronglyTypedSubtree> extends ClusterProcessorMipMapsDualOutputRuntimeSource {
    readonly index: number;
    readonly parent: ParentType;
    constructor(st: VScript.Subtree, index: number, parent: ParentType);
}
export declare class ClusterProcessorMipMapsDualOutputRuntime {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get local_sources(): VScript.StronglyTypedArray<ClusterProcessorMipMapsDualOutputRuntime, ClusterProcessorMipMapsDualOutputRuntimeSource, VScript.RowView<ClusterProcessorMipMapsDualOutputRuntimeSource>>;
}
export declare class ClusterProcessorMipMapsDualOutputRuntimeAsTableRow extends ClusterProcessorMipMapsDualOutputRuntime {
    readonly enclosing_table: VScript.StronglyTypedTable<ClusterProcessorMipMapsDualOutputRuntime>;
    readonly index: number;
    constructor(raw_row: VScript.TableRow, enclosing_table: VScript.StronglyTypedTable<ClusterProcessorMipMapsDualOutputRuntime>);
}
export declare class ClusterProcessorMipMapsInputRuntime {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    /**
      Source IP address of the mipmap RTP stream
    */
    get src_ip_address(): VScript.rKeyword<string, string, ClusterProcessorMipMapsInputRuntime>;
    /**
      Destination IP address of the mipmap RTP stream
    */
    get dest_ip_address(): VScript.rKeyword<string, string, ClusterProcessorMipMapsInputRuntime>;
    get interface(): VScript.rKeyword<string | null, _NetworkInterfaces.VirtualInterface | null, ClusterProcessorMipMapsInputRuntime>;
    get metadata(): VScript.rKeyword<number, number, ClusterProcessorMipMapsInputRuntime>;
}
export declare class ClusterProcessorMipMapsInputRuntimeAsTableRow extends ClusterProcessorMipMapsInputRuntime {
    readonly enclosing_table: VScript.StronglyTypedTable<ClusterProcessorMipMapsInputRuntime>;
    readonly index: number;
    constructor(raw_row: VScript.TableRow, enclosing_table: VScript.StronglyTypedTable<ClusterProcessorMipMapsInputRuntime>);
}
export declare class ClusterProcessorsMipMapsRuntime {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get outputs(): VScript.StronglyTypedTable<ClusterProcessorMipMapsDualOutputRuntime, VScript.TableRowView<ClusterProcessorMipMapsDualOutputRuntime>>;
    get inputs(): VScript.StronglyTypedTable<ClusterProcessorMipMapsInputRuntime, VScript.TableRowView<ClusterProcessorMipMapsInputRuntime>>;
}
export declare class ClusterProcessorsMetadataRuntime {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get source(): VScript.rKeyword<string | null, _ClusterSources.ClusterMetadataSourceRuntime | null, ClusterProcessorsMetadataRuntime>;
}
export declare class ClusterProcessorsMetadataRuntimeAsTableRow extends ClusterProcessorsMetadataRuntime {
    readonly enclosing_table: VScript.StronglyTypedTable<ClusterProcessorsMetadataRuntime>;
    readonly index: number;
    constructor(raw_row: VScript.TableRow, enclosing_table: VScript.StronglyTypedTable<ClusterProcessorsMetadataRuntime>);
}
export declare class ClusterProcessorsPPMSRuntime {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get source_sdp(): VScript.rKeyword<string, string, ClusterProcessorsPPMSRuntime>;
    get source_channels_num(): VScript.rKeyword<number, number, ClusterProcessorsPPMSRuntime>;
}
export declare class ClusterProcessorsPPMSRuntimeAsTableRow extends ClusterProcessorsPPMSRuntime {
    readonly enclosing_table: VScript.StronglyTypedTable<ClusterProcessorsPPMSRuntime>;
    readonly index: number;
    constructor(raw_row: VScript.TableRow, enclosing_table: VScript.StronglyTypedTable<ClusterProcessorsPPMSRuntime>);
}
export declare class ClusterProcessorsLocalRuntime {
    readonly raw: VScript.Subtree;
    constructor(raw: VScript.Subtree);
    get mipmaps(): ClusterProcessorsMipMapsRuntime;
    get metadata(): VScript.StronglyTypedTable<ClusterProcessorsMetadataRuntime, VScript.TableRowView<ClusterProcessorsMetadataRuntime>>;
    get ppms(): VScript.StronglyTypedTable<ClusterProcessorsPPMSRuntime, VScript.TableRowView<ClusterProcessorsPPMSRuntime>>;
}
export declare const Enums: {
    readonly VideoStandard: VideoStandard[];
};
