import PageLayout from '../ui/layouts/PageLayout.vue';
import FormPageLayout from '../ui/layouts/FormPageLayout.vue';
import StandardScreenBoundary from '../ui/screen-types/v2/StandardScreenBoundary.vue';
const __VLS_props = withDefaults(defineProps(), { state: 'READY', dirty: false, readonly: false });
const emit = defineEmits();
const __VLS_defaults = { state: 'READY', dirty: false, readonly: false };
const __VLS_ctx = {
    ...{},
    ...{},
    ...{},
    ...{},
    ...{},
};
let __VLS_components;
let __VLS_intrinsics;
let __VLS_directives;
const __VLS_0 = PageLayout || PageLayout;
// @ts-ignore
const __VLS_1 = __VLS_asFunctionalComponent1(__VLS_0, new __VLS_0({
    title: (__VLS_ctx.title),
    subtitle: (__VLS_ctx.subtitle),
    status: (__VLS_ctx.readonly ? 'READONLY' : __VLS_ctx.state),
    asOf: (__VLS_ctx.asOf),
    version: (__VLS_ctx.version),
}));
const __VLS_2 = __VLS_1({
    title: (__VLS_ctx.title),
    subtitle: (__VLS_ctx.subtitle),
    status: (__VLS_ctx.readonly ? 'READONLY' : __VLS_ctx.state),
    asOf: (__VLS_ctx.asOf),
    version: (__VLS_ctx.version),
}, ...__VLS_functionalComponentArgsRest(__VLS_1));
var __VLS_5;
const { default: __VLS_6 } = __VLS_3.slots;
const __VLS_7 = StandardScreenBoundary || StandardScreenBoundary;
// @ts-ignore
const __VLS_8 = __VLS_asFunctionalComponent1(__VLS_7, new __VLS_7({
    ...{ 'onRetry': {} },
    state: (__VLS_ctx.readonly ? 'READONLY' : (__VLS_ctx.dirty ? 'DIRTY' : __VLS_ctx.state)),
    staleAt: (__VLS_ctx.asOf),
}));
const __VLS_9 = __VLS_8({
    ...{ 'onRetry': {} },
    state: (__VLS_ctx.readonly ? 'READONLY' : (__VLS_ctx.dirty ? 'DIRTY' : __VLS_ctx.state)),
    staleAt: (__VLS_ctx.asOf),
}, ...__VLS_functionalComponentArgsRest(__VLS_8));
let __VLS_12;
const __VLS_13 = {
    /** @type {typeof __VLS_12.retry} */
    onRetry: (...[$event]) => {
        return (__VLS_ctx.emit('retry'));
        // @ts-ignore
        [title, subtitle, readonly, readonly, state, state, asOf, asOf, version, dirty, emit,];
    },
};
const { default: __VLS_14 } = __VLS_10.slots;
const __VLS_15 = FormPageLayout || FormPageLayout;
// @ts-ignore
const __VLS_16 = __VLS_asFunctionalComponent1(__VLS_15, new __VLS_15({
    ...{ 'onSubmit': {} },
}));
const __VLS_17 = __VLS_16({
    ...{ 'onSubmit': {} },
}, ...__VLS_functionalComponentArgsRest(__VLS_16));
let __VLS_20;
const __VLS_21 = {
    /** @type {typeof __VLS_20.submit} */
    onSubmit: (...[$event]) => {
        return (__VLS_ctx.emit('submit'));
        // @ts-ignore
        [emit,];
    },
};
const { default: __VLS_22 } = __VLS_18.slots;
var __VLS_23 = {};
if (__VLS_ctx.$slots.aside) {
    {
        const { preview: __VLS_25 } = __VLS_18.slots;
        var __VLS_26 = {};
        // @ts-ignore
        [$slots,];
    }
}
// @ts-ignore
[];
var __VLS_18;
var __VLS_19;
// @ts-ignore
[];
var __VLS_10;
var __VLS_11;
{
    const { footer: __VLS_28 } = __VLS_3.slots;
    var __VLS_29 = {};
    // @ts-ignore
    [];
}
// @ts-ignore
[];
var __VLS_3;
// @ts-ignore
var __VLS_24 = __VLS_23, __VLS_27 = __VLS_26, __VLS_30 = __VLS_29;
// @ts-ignore
[];
const __VLS_base = (await import('vue')).defineComponent({
    __typeEmits: {},
    __typeProps: {},
    props: {},
});
const __VLS_export = {};
export default {};
