String sequence OR any NucleicAcid to convert to RNA
const rna1 = new RNA('AUCG');
const rna2 = new RNA(someDNA);
Readonly
nucleicPrivate
Readonly
sequenceChecks if the sequence contains the specified subsequence
The subsequence to search for (string or same nucleic acid type)
True if the subsequence is found, false otherwise
const dna = new DNA('ATCGATCG');
console.log(dna.contains('TCG')); // true
console.log(dna.contains('AAA')); // false
Checks if the sequence ends with the specified suffix
The suffix to check for (string or same nucleic acid type)
True if the sequence ends with the suffix, false otherwise
const dna = new DNA('ATCGATCG');
console.log(dna.endsWith('TCG')); // true
console.log(dna.endsWith('ATC')); // false
Checks if the given NucleicAcid is equal
The NucleicAcid to compare
True if the NucleicAcids are equal, false otherwise
Returns the complement as a new RNA instance This is the object-oriented API for getting RNA complements
A new RNA instance containing the complement sequence
const rnaResult = RNA.create('AUCG');
if (rnaResult.success) {
const complement = rnaResult.data.getComplement(); // Returns new RNA('UAGC')
console.log(complement.getSequence()); // 'UAGC'
}
Returns the reverse complement as a new RNA instance This represents the opposite strand orientation for RNA binding
A new RNA instance containing the reverse complement sequence
const rnaResult = RNA.create('AUCG');
if (rnaResult.success) {
const rna = rnaResult.data;
const reverseComplement = rna.getReverseComplement(); // Returns new RNA('CGAU')
// Chainable operations
const original = rna.getReverseComplement().getReverseComplement(); // Returns new RNA('AUCG')
const doubleComplement = rna.getComplement().getComplement(); // Returns new RNA('AUCG')
}
Returns the reverse complement of the sequence This represents the opposite strand of double-stranded nucleic acids
String representing the reverse complement of the sequence
const dna = new DNA('ATCG');
console.log(dna.getReverseComplementSequence()); // 'CGAT'
const rna = new RNA('AUCG');
console.log(rna.getReverseComplementSequence()); // 'CGAU'
Returns an RNA subsequence from the specified start position to the end position
The starting position (inclusive, 0-based)
Optional
end: numberThe ending position (exclusive, 0-based). If not specified, goes to end of sequence
A new RNA instance containing the subsequence
const rnaResult = RNA.create('AUCGAUCG');
if (rnaResult.success) {
const sub = rnaResult.data.getSubsequence(2, 5); // Creates new RNA with 'CGA'
console.log(sub.getSequence()); // 'CGA'
}
Returns the index of the first occurrence of the specified subsequence
The subsequence to search for (string or same nucleic acid type)
The position to start searching from (default: 0)
The index of the first occurrence, or -1 if not found
const dna = new DNA('ATCGATCG');
console.log(dna.indexOf('TCG')); // 1
console.log(dna.indexOf('TCG', 2)); // 5
console.log(dna.indexOf('AAA')); // -1
Checks if the sequence starts with the specified prefix
The prefix to check for (string or same nucleic acid type)
True if the sequence starts with the prefix, false otherwise
const dna = new DNA('ATCGATCG');
console.log(dna.startsWith('ATC')); // true
console.log(dna.startsWith('GTC')); // false
Static
createCreates an RNA instance with validation.
String sequence OR any NucleicAcid to convert to RNA
ValidationResult containing RNA or error
A class representing RNA with a valid sequence. The constructor enforces validation, and the sequence is immutable after construction. All RNA objects are guaranteed to be in a valid state.