Files
agency/.pnpm-store/v3/files/5f/0b2c34ff7ea19207cd47ab25597d90fce2de2ef553556175a0f1e903e22f3a745fbf8387da39efd98b3cc1357d40b6910bd5800c3825d1ea61fc43fe7181b2
hanzo-agent 5af6960b87 run project
Run: sess_f37640604ae254cb4d11dc6217f7b721
2026-09-30 00:04:56 +00:00

101 lines
4.0 KiB
Plaintext

import * as ts from 'typescript';
import type { TypeOrValueSpecifier } from './TypeOrValueSpecifier';
export interface ReadonlynessOptions {
readonly allow?: TypeOrValueSpecifier[];
readonly treatMethodsAsReadonly?: boolean;
}
export declare const readonlynessOptionsSchema: {
additionalProperties: false;
properties: {
allow: {
readonly items: {
readonly oneOf: [{
readonly type: "string";
}, {
readonly additionalProperties: false;
readonly properties: {
readonly from: {
readonly enum: ["file"];
readonly type: "string";
};
readonly name: {
readonly oneOf: [{
readonly type: "string";
}, {
readonly items: {
readonly type: "string";
};
readonly minItems: 1;
readonly type: "array";
readonly uniqueItems: true;
}];
};
readonly path: {
readonly type: "string";
};
};
readonly required: ["from", "name"];
readonly type: "object";
}, {
readonly additionalProperties: false;
readonly properties: {
readonly from: {
readonly enum: ["lib"];
readonly type: "string";
};
readonly name: {
readonly oneOf: [{
readonly type: "string";
}, {
readonly items: {
readonly type: "string";
};
readonly minItems: 1;
readonly type: "array";
readonly uniqueItems: true;
}];
};
};
readonly required: ["from", "name"];
readonly type: "object";
}, {
readonly additionalProperties: false;
readonly properties: {
readonly from: {
readonly enum: ["package"];
readonly type: "string";
};
readonly name: {
readonly oneOf: [{
readonly type: "string";
}, {
readonly items: {
readonly type: "string";
};
readonly minItems: 1;
readonly type: "array";
readonly uniqueItems: true;
}];
};
readonly package: {
readonly type: "string";
};
};
readonly required: ["from", "name", "package"];
readonly type: "object";
}];
};
readonly type: "array";
};
treatMethodsAsReadonly: {
type: "boolean";
};
};
type: "object";
};
export declare const readonlynessOptionsDefaults: ReadonlynessOptions;
/**
* Checks if the given type is readonly
*/
export declare function isTypeReadonly(program: ts.Program, type: ts.Type, options?: ReadonlynessOptions): boolean;