import { z } from 'zod';
import { type Options } from '../options.js';
import { File } from './file.js';
declare const schema: z.ZodObject<{
    name: z.ZodString;
    version: z.ZodString;
    description: z.ZodString;
    keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
    private: z.ZodOptional<z.ZodBoolean>;
    homepage: z.ZodURL;
    bugs: z.ZodObject<{
        url: z.ZodURL;
    }, z.core.$strict>;
    repository: z.ZodObject<{
        type: z.ZodLiteral<"git">;
        url: z.ZodURL;
    }, z.core.$strict>;
    license: z.ZodLiteral<"GPL-3.0-or-later">;
    author: z.ZodString;
    type: z.ZodLiteral<"module">;
    exports: z.ZodOptional<z.ZodString>;
    bin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    files: z.ZodOptional<z.ZodTuple<[z.ZodLiteral<"./dist/**/!(*.test).{js,d.ts,cjs}">], z.ZodString>>;
    scripts: z.ZodObject<{
        build: z.ZodString;
        format: z.ZodString;
        'format:check': z.ZodString;
        lint: z.ZodLiteral<"npm run format:check && eslint">;
        'lint:fix': z.ZodLiteral<"npm run format && eslint --fix">;
        postinstall: z.ZodOptional<z.ZodString>;
        prepare: z.ZodLiteral<"husky .github/husky">;
        test: z.ZodString;
    }, z.core.$strict>;
    commitlint: z.ZodRecord<z.ZodString, z.ZodUnknown>;
    prettier: z.ZodLiteral<"@vidavidorra/prettier-config">;
    release: z.ZodRecord<z.ZodString, z.ZodUnknown>;
    ava: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    c8: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    devDependencies: z.ZodRecord<z.ZodString, z.ZodString>;
    engines: z.ZodObject<{
        node: z.ZodLiteral<">=22">;
    }, z.core.$strict>;
    publishConfig: z.ZodOptional<z.ZodObject<{
        access: z.ZodLiteral<"public">;
    }, z.core.$strict>>;
}, z.core.$strict>;
type PackageJson = z.infer<typeof schema>;
declare class Package extends File {
    protected readonly _fullPackage: Required<PackageJson>;
    protected readonly _package: PackageJson;
    constructor(path: string, options: Options);
    get package(): {
        name: string;
        version: string;
        description: string;
        homepage: string;
        bugs: {
            url: string;
        };
        repository: {
            type: "git";
            url: string;
        };
        license: "GPL-3.0-or-later";
        author: string;
        type: "module";
        scripts: {
            build: string;
            format: string;
            'format:check': string;
            lint: "npm run format:check && eslint";
            'lint:fix': "npm run format && eslint --fix";
            prepare: "husky .github/husky";
            test: string;
            postinstall?: string | undefined;
        };
        commitlint: Record<string, unknown>;
        prettier: "@vidavidorra/prettier-config";
        release: Record<string, unknown>;
        devDependencies: Record<string, string>;
        engines: {
            node: ">=22";
        };
        keywords?: string[] | undefined;
        private?: boolean | undefined;
        exports?: string | undefined;
        bin?: Record<string, unknown> | undefined;
        files?: ["./dist/**/!(*.test).{js,d.ts,cjs}", ...string[]] | undefined;
        ava?: Record<string, unknown> | undefined;
        c8?: Record<string, unknown> | undefined;
        dependencies?: Record<string, string> | undefined;
        publishConfig?: {
            access: "public";
        } | undefined;
    };
    process(): this;
    private get gitHubUrl();
}
export { Package, type PackageJson };
