import { Schema } from 'effect';
import type { Environment } from '../../../../../vendor/cel-js/lib/index.js';
export { getStructFieldDescription, getStructFieldTitle } from '../../../../table/utils/schema-meta.js';
type AnySchema = Schema.Schema<any, any, never>;
type Configure = (env: Environment) => void;
export declare const type: "com.shwfed.block.icon";
export declare const compatibilityDate: "2026-06-02";
export declare const metadata: {
    readonly name: "图标";
    readonly icon: "fluent:emoji-20-regular";
    readonly w: {
        readonly initial: 4;
        readonly min: 1;
        readonly max: number;
    };
    readonly h: {
        readonly initial: 4;
        readonly min: 1;
        readonly max: number;
    };
};
export declare function schema(_configure: Configure, _blockRef?: AnySchema): Schema.Struct<{
    id: Schema.refine<string, typeof Schema.String>;
    type: Schema.tag<"com.shwfed.block.icon">;
    compatibilityDate: Schema.tag<"2026-06-02">;
    displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
    icon: Schema.refine<string, typeof Schema.String>;
    color: Schema.optional<Schema.SchemaClass<string, string, never>>;
    size: Schema.optional<Schema.refine<number, Schema.filter<typeof Schema.Number>>>;
    circle: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
}>;
export declare function defaultBody(): Record<string, unknown>;
export type Value = Schema.Schema.Type<ReturnType<typeof schema>>;
