import { CSRContext } from '../context';
import { StructureNode } from '../structure';
export interface FoxpageCSRContextHooks {
    beforeContextInit?: (ctx: CSRContext) => void;
    afterContextInit?: (ctx: CSRContext) => void;
}
export interface FoxpageCSRModuleHooks {
    beforeFrameworkInit?: (ctx: CSRContext) => void;
    afterFrameworkInit?: (ctx: CSRContext) => void;
    beforeModuleInit?: (ctx: CSRContext) => void;
    afterModuleInit?: (ctx: CSRContext) => void;
}
export interface FoxpageCSRRenderHooks {
    beforePageRender?: (ctx: CSRContext) => void;
    afterPageRender?: (ctx: CSRContext) => void;
}
export interface FoxpageCSRBuildHooks {
    beforeNodeBuild?: (ctx: CSRContext, node: StructureNode) => void;
    afterNodeBuild?: (ctx: CSRContext, node: StructureNode) => void;
    beforePageBuild?: (ctx: CSRContext) => void;
    afterPageBuild?: (ctx: CSRContext) => void;
}
